[
https://issues.apache.org/jira/browse/RYA-153?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Caleb Meier resolved RYA-153.
-----------------------------
Resolution: Fixed
Fix Version/s: 3.2.10
> PCJ Matching Bug
> ----------------
>
> Key: RYA-153
> URL: https://issues.apache.org/jira/browse/RYA-153
> Project: Rya
> Issue Type: Bug
> Components: clients
> Affects Versions: 3.2.10
> Reporter: Caleb Meier
> Assignee: Caleb Meier
> Fix For: 3.2.10
>
>
> There is a bug in how the PCJOptimizer matches PCJs to sub-queries. As it's
> currently implemented, the PCJOptimizer decomposes queries into JoinSegments
> (portions of the query which contain only Joins) and LeftJoinSegments
> (portions of the query which contain Joins and LeftJoins). Each of these
> segment types has an associated matcher (JoinSegmentMatcher and
> LeftJoinSegmentMatcher) which performs the task of matching the PCJ queries
> to sub-queries of the respective segment. The JoinSegmentMatcher currently
> attempts to match the PCJs with LeftJoins to some sub-query of that segment.
> From an optimization point of view, it shouldn't attempt this match given
> that the PCJ contains LeftJoins and the JoinSegment doesn't (a match will
> never occur). But because the JoinSegmentMatcher isn't designed to handle
> LeftJoins, there is also buggy matching behavior occurring. So there needs
> to be some sort of input validation for the JoinSegmentMatcher to prevent the
> attempted match of a PCJ with LeftJoins to a JoinQuerySegment.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)