[ https://issues.apache.org/jira/browse/OAK-3991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15134353#comment-15134353 ]
Davide Giannella commented on OAK-3991: --------------------------------------- Created a branch as well for experimenting around with it https://github.com/davidegiannella/jackrabbit-oak/tree/OAK-3991 > Incorrect resultset from XPATH, multiple ORs and Lucene full-text > ----------------------------------------------------------------- > > Key: OAK-3991 > URL: https://issues.apache.org/jira/browse/OAK-3991 > Project: Jackrabbit Oak > Issue Type: Bug > Components: lucene, query > Affects Versions: 1.2.10, 1.3.15 > Reporter: Davide Giannella > Assignee: Davide Giannella > Fix For: 1.6 > > Attachments: OAK-3991-test.patch > > > In case of more complex xpath queries with a mix of ORs, ANDs and > full-text the returned resultset is wrong. Some of the conditions are > lost during the query execution. Most probably during the Filter > creation. > The query is: > {noformat} > /jcr:root/test//element(*, nt:unstructured)[ > ( > jcr:contains(., 'cinema') > or @tags = 'architecture-keywords:building/cinema' > or @tags = '/tags/architecture-keywords/building/cinema' > ) > and @status = 'amber' > and ( > not(@id) > and ( not(@types) > or ( > not(@types = 'published') > and not(@types = 'page') > and not(@types = 'asset') > ) > ) > )] > {noformat} > In this case if you replace the @tags conditions with a > {{jcr:contains}} rather than {{=}} it will make the query works. Which > suggests the same root cause of OAK-2660. > OAK-2660 was indirectly addressed by OAK-1617 but the OR->UNION > conversion is not applied to subqueries of a UNION set. > See [attached patch|^OAK-3991-test.patch] for a reproducing test case. -- This message was sent by Atlassian JIRA (v6.3.4#6332)