[ 
https://issues.apache.org/jira/browse/OAK-4265?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15259700#comment-15259700
 ] 

Thomas Mueller commented on OAK-4265:
-------------------------------------

> Can we leverage the optimisation hook we provided with OAK-1617 for 
> generating alternatives that will be considered then by costs?

We could, but I don't think this is very important or urgent. The alternatives 
would be to either use a union, or just one query with a limited (or no) path 
restriction actually used by the index.


> XPath: support limited form of "union"
> --------------------------------------
>
>                 Key: OAK-4265
>                 URL: https://issues.apache.org/jira/browse/OAK-4265
>             Project: Jackrabbit Oak
>          Issue Type: New Feature
>          Components: query
>            Reporter: Thomas Mueller
>            Assignee: Thomas Mueller
>             Fix For: 1.6
>
>
> Currently, SQL-2 supports multiple paths restrictions combined with "or", and 
> it supports "union". XPath doesn't support either. It would be good if this 
> is supported, specially the "multiple paths" part.
> I think it makes sense to convert this to a SQL-2 "union" in all cases, even 
> if it's just multiple paths.
> It doesn't need to be a "generic" solution, so that "|" doesn't need to be 
> supported at every place (for example in the condition, or in the "order 
> by"). But it would be nice if multiple independent queries, with one order 
> by, could be supported.
> Implementation note: what makes this a bit complicated is support for "order 
> by".
> For example:
> {noformat}
> /jcr:root/(content|lib)/element(*, nt:base) order by @title
> select [jcr:path], [jcr:score], * 
> from [nt:base] as a 
> where ischildnode(a, '/content') 
> /* xpath: /jcr:root/content/element(*, nt:base) order by @title */ 
> union select [jcr:path], [jcr:score], * 
> from [nt:base] as a 
> where ischildnode(a, '/lib') 
> /* xpath: /jcr:root/lib/element(*, nt:base) order by @title */ 
> order by [title]
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to