Bug #1623

Searching for "identifier" is possible even though no property "identifier" exists

Added by Robert Lemke almost 7 years ago. Updated about 4 years ago.

Status:Resolved Start date:2008-10-01
Priority:Must have Due date:
Assigned To:Karsten Dambekalns % Done:

100%

Category:Index/Search
Target version:-

Description

Consider this query:

        $nodes =  $query->matching($query->equals('identifier', $id))->execute();

This will even work if no property "identifier" has been defined in the domain model because the CR used the field name "identifier" internally.

Then again searching for the identifier "id" (the name of the property annotated as @identifier) won't return any results because Lucene tokenizes the UUID.

1. Hide the internal identifier
2. Make sure that the QM recognizes the identifier property and then searches in the CR identifier field (jcr:uuid) instead of the domain model's property


Related issues

related to TYPO3.TYPO3CR - Task #1886: Check indexing behaviour Closed 2008-10-27

Associated revisions

Revision 61aa7621
Added by Karsten Dambekalns over 6 years ago

FLOW3, TYPO3CR:
  • Persistence: rewrote the way object trees are stored in the CR, fixes #1883, fixes #1882
TYPO3CR:
  • Persistence: array keys are now preserved when persisting, fixes #1620
  • Persistence: fixed error when persisting DateTime properties, fixes #2195
  • changed the way properties are added to the Lucene index, fixes #1623, refs #1886
  • fixed storage backend to enable use of namespaced nodetype names
Lucene, TYPO3CR:
  • moved the KeywordAnalyser here from TYPO3CR

History

#1 Updated by Karsten Dambekalns almost 7 years ago

  • Target version set to 197

#2 Updated by Karsten Dambekalns over 6 years ago

  • Status changed from New to Accepted
  • % Done changed from 0 to 30

The internal properties are now prefixed with "typo3cr:" in the Lucene index, properties from objects are prefixed with "flow3:" in the persistence backend. Thus the first point is resolved.

#3 Updated by Karsten Dambekalns over 6 years ago

  • % Done changed from 30 to 90

Point 2 above is solved differently now, all fields are now stored non-tokenised. For the probable case of someone wanting to do a typical full-text search later on we need to find a solution later on. Commit pending.

#4 Updated by Karsten Dambekalns over 6 years ago

  • Status changed from Accepted to Resolved
  • % Done changed from 90 to 100

Applied in changeset r1565.

#5 Updated by Robert Lemke about 4 years ago

  • Target version deleted (197)

Also available in: Atom PDF