[
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-NPE.patch
While looking at a test with outer joins, I found this nice NPE just waiting to
happen :)
In case of outer joins, the right row variable can be null, thus breaking the
toString implementation of the JoinRow class.
> 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-NPE.patch, 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