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)