[
https://issues.apache.org/jira/browse/TINKERPOP-1682?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17101750#comment-17101750
]
ASF GitHub Bot commented on TINKERPOP-1682:
-------------------------------------------
spmallette opened a new pull request #1284:
URL: https://github.com/apache/tinkerpop/pull/1284
https://issues.apache.org/jira/browse/TINKERPOP-1682
This is an old branch that existed as a PR on #621 and never quite merged.
It's a big changset but most of the work was done long ago and approved, but
the PR closed when we renamed the `tp33` branch to `3.3-dev`. Rather than lose
this work, I rebased it to `master`, added some docs, made some minor changes
to support `by(T)` on `Property` and fixed an issue in the strategy related to
the second `by()` on `group()`.
All tests pass with `docker/build.sh -t -n -i`
VOTE +1
----------------------------------------------------------------
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]
> by-modulator optimization strategy
> ----------------------------------
>
> Key: TINKERPOP-1682
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1682
> Project: TinkerPop
> Issue Type: Improvement
> Components: process
> Affects Versions: 3.2.4
> Reporter: Daniel Kuppitz
> Assignee: Daniel Kuppitz
> Priority: Major
>
> The can be a significant difference in performance depending on whether you
> use {{by(id)}} or {{by(id())}}:
> {noformat}
> gremlin> g.V().out().in().path().by(id()).profile()
> ==>Traversal Metrics
> Step Count
> Traversers Time (ms) % Dur
> =============================================================================================================
> TinkerGraphStep(vertex,[]) 6
> 6 12.137 58.03
> VertexStep(OUT,vertex) 6
> 6 1.345 6.43
> VertexStep(IN,vertex) 12
> 12 0.861 4.12
> PathStep([[IdStep, ProfileStep]]) 12
> 12 6.570 31.42
> IdStep 36
> 36 0.452
> >TOTAL -
> - 20.916 -
> gremlin> g.V().out().in().path().by(id).profile()
> ==>Traversal Metrics
> Step Count
> Traversers Time (ms) % Dur
> =============================================================================================================
> TinkerGraphStep(vertex,[]) 6
> 6 0.876 11.54
> VertexStep(OUT,vertex) 6
> 6 0.714 9.40
> VertexStep(IN,vertex) 12
> 12 3.299 43.43
> PathStep([id]) 12
> 12 2.706 35.63
> >TOTAL -
> - 7.596 -
> {noformat}
> We should have a strategy that rewrites these simple patterns. This affects
> {{id()}}, {{label()}}, {{key()}}, {{value()}}, but also
> {{by(values("name"))}}, which can be rewritten as {{by("name")}}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)