Uploaded image for project: 'ModeShape'
  1. ModeShape
  2. MODE-1049

PlanUtil replaces descendant-node join conditions with child-node join conditions

    Details

    • Steps to Reproduce:
      Hide
      • Create a query with a descendant-join condition (like "select t.* from [mx:type] as t left outer join [mx:resource] as r on isdescendantnode(t, r)")
      • Run it through the query engine
      • Take a look at the plan before the ReplaceViews rule is run, notice the descendant-node join condition
      • Let the ReplaceViews rule run
      • Check the join condition in the new plan : it became a child-node join condition
      Show
      Create a query with a descendant-join condition (like "select t.* from [mx:type] as t left outer join [mx:resource] as r on isdescendantnode(t, r)") Run it through the query engine Take a look at the plan before the ReplaceViews rule is run, notice the descendant-node join condition Let the ReplaceViews rule run Check the join condition in the new plan : it became a child-node join condition

      Description

      org.modeshape.graph.query.plan.PlanUtil.replaceViewReferences(QueryContext context, JoinCondition joinCondition, ColumnMapping mapping, PlanNode node) returns a ChildNodeJoinCondition when joinCondition is actually a DescendantNodeJoinCondition. The join condition type should not be changed by this method.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                rhauch Randall Hauch
                Reporter:
                edouardh Edouard Hue
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: