[ 
https://issues.apache.org/jira/browse/TINKERPOP-2475?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17234086#comment-17234086
 ] 

ASF GitHub Bot commented on TINKERPOP-2475:
-------------------------------------------

divijvaidya commented on pull request #1359:
URL: https://github.com/apache/tinkerpop/pull/1359#issuecomment-729273911


   Congratulations and thank you @Liu-Delin for your first contribution to 
Apache TinkerPop. 


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


> Barrier step touches one more element of next loop
> --------------------------------------------------
>
>                 Key: TINKERPOP-2475
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-2475
>             Project: TinkerPop
>          Issue Type: Bug
>          Components: process
>    Affects Versions: 3.4.8
>            Reporter: Liu-Delin
>            Assignee: Stephen Mallette
>            Priority: Major
>             Fix For: 3.5.0, 3.4.9
>
>
> This bug will preload one more element in barrier action. For example, if we 
> have 4 vertices, and we have a barrier(2) step, we expect to get the first 2 
> in a barrier then the last 2 in another barrier loop. But when we get the 
> first 2 vertices, the third one has already been loaded.
> The root cause is below code: 
> {code:java}
> @Override
> public void processAllStarts() {
>     while (this.starts.hasNext() && (this.maxBarrierSize == Integer.MAX_VALUE 
> || this.barrier.size() < this.maxBarrierSize)) {
>         final Traverser.Admin<S> traverser = this.starts.next();
>         traverser.setStepId(this.getNextStep().getId()); // when barrier is 
> reloaded, the traversers should be at the next step
>         this.barrier.add(traverser);
>     }
> }
> {code}
> In while loop, we use this.starts.hasNext() at first, and it will cause the 
> vertex loading action. It will affect the performance when the vertex is 
> saved in DB instead of memory.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to