Simplify JoinGraph representation

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Fixed
    • Priority: Major - P3
    • 8.3.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Optimization
    • Fully Compatible
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      The initial implementation of the JoinGraph supported NodeSets on either side of an edge in an attempt to future proof the graph to more complex edges (A.a + B.b = C.c + D.d). However, in practice this has made all graph algorithms need to consider their semantics in the presence of multiple nodes on an edge. Since these types of complex predicates will not allow us to enumerate any more plans/different join algorithms (the predicate above can only be satisfied by a filter after the cross product of ABCD), it is not helpful to be represented in the graph. This ticket will simplify the join graph to represent edges as connections between single nodes.

            Assignee:
            Alexander Ignatyev
            Reporter:
            Ben Shteinfeld
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: