Uploaded image for project: 'TinkerPop'
  1. TinkerPop
  2. TINKERPOP-1606

Refactor GroupStep to not have the reduction traversal included in its BiOperator.

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 3.2.3
    • Fix Version/s: 3.2.4
    • Component/s: process
    • Labels:
      None

      Description

      GroupStep has a complicated BiOperator (its reducer). I believe we can simplify it significantly by considering only two states.

      1. A by()-modulation that does NOT have a Barrier.
      2. A by()-modulation that DOES have a Barrier.

      For the first, simply store a single Traverser. No need to aggregate all traversers as only one will ultimately be emitted.

      For the latter, simply store the barrier's BiOperator (NOT the step itself).

      In this way, we will no longer have to encode a traversal in the reducer and thus, will remove various potential problems associated with detached traversals.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                okram Marko A. Rodriguez
                Reporter:
                okram Marko A. Rodriguez
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: