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

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

GitHub user spmallette opened a pull request:

    https://github.com/apache/tinkerpop/pull/789

    TINKERPOP-1870 Made VertexTraverserSet more generic to IndexedTraverserSet

    https://issues.apache.org/jira/browse/TINKERPOP-1870
    
    IndexedTraverserSet does what VertexTraverserSet was doing, but in a more 
complete way. It respects all the semantics of a TraverserSet and fixes a 
problem that VertexTraverserSet had where it didn't properly account for 
Traverser merges. Added a full grip of unit tests for both TraverserSet and 
IndexedTraverserSet.
    
    All tests pass with `docker/build.sh -t -i`
    
    VOTE +1

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/apache/tinkerpop TINKERPOP-1870

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/tinkerpop/pull/789.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #789
    
----
commit 068bef855c0f6c44a2ed71c1c8f4b18ad1e1dbdb
Author: Stephen Mallette <spmva@...>
Date:   2018-01-23T21:16:40Z

    TINKERPOP-1870 Made VertexTraverserSet more generic to IndexedTraverserSet
    
    IndexedTraverserSet does what VertexTraverserSet was doing, but in a more 
complete way. It respects all the semantics of a TraverserSet and fixes a 
problem that VertexTraverserSet had where it didn't properly account for 
Traverser merges. Added a full grip of unit tests for both TraverserSet and 
IndexedTraverserSet.

----


> n^2 synchronious operation in OLAP WorkerExecutor.execute() method
> ------------------------------------------------------------------
>
>                 Key: TINKERPOP-1870
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1870
>             Project: TinkerPop
>          Issue Type: Improvement
>    Affects Versions: 3.2.7, 3.3.1
>            Reporter: Artem Aliev
>            Assignee: stephen mallette
>            Priority: Major
>             Fix For: 3.2.8, 3.3.2
>
>         Attachments: findTraverser1.png, findTraverser2.png, 
> findTraverserFixed.png
>
>
> [https://github.com/apache/tinkerpop/blob/master/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/WorkerExecutor.java#L80-L93]
> This block of code iterates over all remote traverses to select one related 
> to the current vertex and remove it. This operation is repeated for the next 
> vertex and so one. For following example query it means n^2 operations (n is 
> number of vertices). All of them in sync block. multi core spark executor 
> will do this operations serial. 
> {code}
> g.V().emit().repeat(both().dedup()).count().next()
> {code}
> See jvisualvm screenshot. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to