Martin Schulze created OAK-9653:
-----------------------------------

             Summary: WIP: Adding the index tag option interferes with regex 
properties, leads to return zero results
                 Key: OAK-9653
                 URL: https://issues.apache.org/jira/browse/OAK-9653
             Project: Jackrabbit Oak
          Issue Type: Bug
          Components: indexing
    Affects Versions: 1.40.0
            Reporter: Martin Schulze


I've experienced this behavior und the following circumstances:
 * Query with an index tag option ("option (index tag x)")
 * The index the tag has an regex property with REGEX_ALL_PROPS

What happens is that the resulting query to lucene, which can be inspected in 
[1] is:
{noformat}
+:ancestors:/test +:indexTag:x{noformat}
So the \{{:indexTag}} will be added to the Lucene index as a property, because 
{{:indexTag}} matches the regex, which can be inspected in [2]

I've added a failing unit test for this in [0].

I've also tried to come around with a custom regex which excludes every node 
which starts with a colon ( regex: {{"^[^:\\/][^\\/]*$"}}). This leads to 
another problem where the index won't be selected and the query will traverse.

[0] [https://github.com/apache/jackrabbit-oak/pull/448/files]

[1] 
[https://github.com/apache/jackrabbit-oak/blob/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java#L340]

[2] 
https://github.com/apache/jackrabbit-oak/blob/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/IndexDefinition.java#L1500



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to