GitHub user spmallette opened a pull request:
https://github.com/apache/tinkerpop/pull/860
TINKERPOP-1595 Optimize TraversalVertexProgram
https://issues.apache.org/jira/browse/TINKERPOP-1595
I did as the issue requested and optimized `TraversalVertexProgram`.
Definitely some hotspots in there that have been removed. I'd say that the main
fixes involved the direct lookup of `clone()` in `MemoryComputeKey` rather than
cycling all methods and the use of Base64 encoding instead of CSV style
string/regex derser for traversals in OLAP.
Feel free to VOTE but this change will not be merged until we open
development for 3.2.10.
All tests pass with `docker/build.sh -t -n -i`
VOTE +1
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/apache/tinkerpop TINKERPOP-1595
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/tinkerpop/pull/860.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 #860
----
commit 172dfa5ea6e5dca52ee9e593da5eb054940c7fe7
Author: Stephen Mallette <spmva@...>
Date: 2018-04-24T11:59:58Z
TINKERPOP-1595 Removed usage of deprecated graph computer method
commit 344d1b24445fb332b88ecce9af8020f91046c3e0
Author: Stephen Mallette <spmva@...>
Date: 2018-04-24T12:00:48Z
TINKERPOP-1595 Removed stream() usage
commit 91f078a79de8ef4445a00e568cce1bff09a7095d
Author: Stephen Mallette <spmva@...>
Date: 2018-04-24T12:02:31Z
TINKERPOP-1595 Removed stream() usage
commit 1d149c6d56421bacecdd53ab0c223f386bc999db
Author: Stephen Mallette <spmva@...>
Date: 2018-04-24T12:03:28Z
TINKERPOP-1595 Refactored reflective lookups for clone()
Rather than iterate all methods to find clone() just call getMethod() and
call that if found. Nothing seems to be exercising this bit of code in our test
suite. I forced it by adding clone() temporarily to RangeBiOperator and it
worked without issue. Not sure how else to test this.
commit e2eebf4c5590fd20c8184bd0162c717614575034
Author: Stephen Mallette <spmva@...>
Date: 2018-04-24T12:06:56Z
TINKERPOP-1595 Changed vertex program serialization to base64 encoded
This approach shows to be faster than writing the bytes as an array of
string values and deserializing with regex based parsing.
commit f2119bce29615792a235e139047089bbc8c39df2
Author: Stephen Mallette <spmva@...>
Date: 2018-04-24T12:10:12Z
TINKERPOP-1595 Updated changelog
commit aef6896bda2fea7708dc16951bb8652a1b488e93
Author: Stephen Mallette <spmva@...>
Date: 2018-04-27T14:31:15Z
TINKERPOP-1595 Cleaned up exception handling for giraph
Some really specific exception handling of deserialization errors in Giraph
were causing tests to hang. Corrected those problems and commented heavily.
commit 074ab1e5dca147acb6e05c4c1b4fff9f7e69d8b8
Author: Stephen Mallette <spmva@...>
Date: 2018-04-27T14:33:58Z
TINKERPOP-1595 Fixed up changelog as this moved to 3.2.10
----
---