You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by "Marko A. Rodriguez (JIRA)" <ji...@apache.org> on 2016/06/10 18:15:21 UTC
[jira] [Commented] (TINKERPOP-1332) Improve .explain() Dialogue
[ https://issues.apache.org/jira/browse/TINKERPOP-1332?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15324999#comment-15324999 ]
Marko A. Rodriguez commented on TINKERPOP-1332:
-----------------------------------------------
[~rspitzer] — the reason it just looks like a “long list of strategies but no application” is because there are no optimizations being done on {{g.V().count()}} .. each applied strategy in the list does “nothing” and thus, doesn’t alter the traversal for the next strategy in the list. However, {{GraphFilterStrategy}} DOES do something, but its “meta” (not part of the traversal), but I will expose it by having the `VertexProgramStep.toString()` showing applied {{GraphFilters}}.
> Improve .explain() Dialogue
> ----------------------------
>
> Key: TINKERPOP-1332
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1332
> Project: TinkerPop
> Issue Type: Improvement
> Reporter: Russell Alexander Spitzer
> Priority: Minor
>
> Currently the output of explain gives you a long list of strategies but no details about their application
> {code}
> ==>Traversal Explanation
> ============================================================================================================================
> Original Traversal [GraphStep(vertex,[]), CountGlobalStep]
> HaltedTraverserStrategy [D] [GraphStep(vertex,[]), CountGlobalStep]
> ConnectiveStrategy [D] [GraphStep(vertex,[]), CountGlobalStep]
> VertexProgramStrategy [D] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> OrderLimitStrategy [O] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> IdentityRemovalStrategy [O] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> FilterRankingStrategy [O] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> IncidentToAdjacentStrategy [O] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> RangeByIsCountStrategy [O] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> AdjacentToIncidentStrategy [O] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> MatchPredicateStrategy [O] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> GraphFilterStrategy [O] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> PathProcessorStrategy [O] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> SparkInterceptorStrategy [P] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> SparkSingleIterationStrategy [P] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> ProfileStrategy [F] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> LambdaRestrictionStrategy [V] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> ComputerVerificationStrategy [V] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> StandardVerificationStrategy [V] [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> Final Traversal [TraversalVertexProgramStep([GraphStep(vertex,[]), CountGlobalStep]), ComputerResultStep]
> {code}
> It would be helpful if filter strategies for example would list the filters used.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)