Thomas Mueller created OAK-6309:
-----------------------------------

             Summary: Not always convert XPath "primaryType in a, b" to union
                 Key: OAK-6309
                 URL: https://issues.apache.org/jira/browse/OAK-6309
             Project: Jackrabbit Oak
          Issue Type: Improvement
            Reporter: Thomas Mueller
            Assignee: Thomas Mueller
             Fix For: 1.8


Currently, queries with multiple primary types are always converted to a 
"union", but this is not alway the best solution. The main problem is that 
results are not sorted by score as expected. Example:

{noformat}
/jcr:root/content//element(*, nt:hierarchyNode)[jcr:contains(., 'abc)
and (@jcr:primaryType = 'acme:Page' or @jcr:primaryType = 'acme:Asset')] 
{noformat}

This is currently converted to a union, even if the same index is used for buth 
subqueries (assuming there is an index on nt:hierarchyNode).

A workaround is to use:

{noformat}
/jcr:root/content//element(*, nt:hierarchyNode)[jcr:contains(., 'abc)
and (./@jcr:primaryType = 'acme:Page' or ./@jcr:primaryType = 'acme:Asset')] 
{noformat}




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to