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:
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.