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

Memory.HALTED_TRAVERSER transience is not sound.

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 3.2.0-incubating
    • Fix Version/s: 3.2.1
    • Component/s: process
    • Labels:
      None

      Description

      g.V().out().program(xxx)
      

      The above xxx VertexProgram will have access to the VertexProperty.HALTED_TRAVERSERS from out().

      g.V().out().groupCount().program(yyy)
      

      The above yyy VertexProgram will not have access to the Memory.HALTED_TRAVERSERS from groupCount() (barrier) because it will be declared transient.

      ---------

      [10:32 AM] Marko Rodriguez: this.memoryComputeKeys.add(MemoryComputeKey.of(HALTED_TRAVERSERS, Operator.addAll, false, this.keepDistributedHaltedTraversers)); // only keep if it will be preserved
      [10:32 AM] Daniel Kuppitz: when is keepDistributedHaltedTraversers false?
      [10:33 AM] Marko Rodriguez: this.keepDistributedHaltedTraversers =
      !(this.traversal.get().getParent().asStep().getNextStep() instanceof ComputerResultStep || // if its just going to stream it out, don't distribute
      this.traversal.get().getParent().asStep().getNextStep() instanceof EmptyStep || // same as above, but if using TraversalVertexProgramStep directly
      (this.traversal.get().getParent().asStep().getNextStep() instanceof ProfileStep && // same as above, but needed for profiling
      this.traversal.get().getParent().asStep().getNextStep().getNextStep() instanceof ComputerResultStep));
      Show more
      given that ProgramVertexProgramStep is next, it will false and thus, Memory.HALTED_TRAVERSERS is transient and is erased.
      [10:34 AM] Marko Rodriguez: I think that is the problem.

        Attachments

          Issue Links

            Activity

              People

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

                Dates

                • Created:
                  Updated:
                  Resolved: