You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Davide Giannella (JIRA)" <ji...@apache.org> on 2017/01/18 11:14:26 UTC
[jira] [Commented] (OAK-3991) Incorrect resultset from XPATH,
multiple ORs and Lucene full-text
[ https://issues.apache.org/jira/browse/OAK-3991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15827877#comment-15827877 ]
Davide Giannella commented on OAK-3991:
---------------------------------------
for the actual backport see OAK-4324
> 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: Thomas Mueller
> Priority: Blocker
> Fix For: 1.2.15, 1.3.16, 1.4
>
> 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)