You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Alex Parvulescu (JIRA)" <ji...@apache.org> on 2011/03/09 19:08:59 UTC

[jira] Updated: (JCR-2852) Support multi-selector OR constraints in join queries

     [ https://issues.apache.org/jira/browse/JCR-2852?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alex Parvulescu updated JCR-2852:
---------------------------------

    Attachment: JCR-2852.patch

Patch to split an affected query (one that has an OR that spans over both sides of a JOIN), run the 2 splits and then merge the results.

> Support multi-selector OR constraints in join queries
> -----------------------------------------------------
>
>                 Key: JCR-2852
>                 URL: https://issues.apache.org/jira/browse/JCR-2852
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-core, query
>            Reporter: Jukka Zitting
>         Attachments: JCR-2852.patch
>
>
> Our current join implementation doesn't support OR constraints that refer to more than one selector. For example the following query is not possible:
>     SELECT a.* FROM [my:type] AS a INNER JOIN [my:type] as b ON a.foo = b.bar WHERE a.baz = 'x' OR b.baz = 'y'
> This limitation is a result of the way the join execution splits the query into per-selector components and merges the result based on the given join condition.
> A simple but often inefficient solution would be to process such OR constraints as post-processing filters like we already do for some other more complex constraint types.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira