[ 
https://issues.apache.org/jira/browse/TINKERPOP-1281?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Marko A. Rodriguez closed TINKERPOP-1281.
-----------------------------------------
       Resolution: Fixed
         Assignee: Marko A. Rodriguez
    Fix Version/s: 3.2.1

> Memory.HALTED_TRAVERSER transience is not sound.
> ------------------------------------------------
>
>                 Key: TINKERPOP-1281
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1281
>             Project: TinkerPop
>          Issue Type: Bug
>          Components: process
>    Affects Versions: 3.2.0-incubating
>            Reporter: Marko A. Rodriguez
>            Assignee: Marko A. Rodriguez
>             Fix For: 3.2.1
>
>
> {code}
> g.V().out().program(xxx)
> {code}
> The above {{xxx}} VertexProgram will have access to the 
> {{VertexProperty.HALTED_TRAVERSERS}} from {{out()}}.
> {code}
> g.V().out().groupCount().program(yyy)
> {code}
> 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.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to