[
https://issues.apache.org/jira/browse/TINKERPOP-1480?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Marko A. Rodriguez closed TINKERPOP-1480.
-----------------------------------------
Resolution: Won't Fix
Assignee: Marko A. Rodriguez
> PathRestractionStrategy shouldn't NoOpBarrierStep if it will be the end step.
> -----------------------------------------------------------------------------
>
> Key: TINKERPOP-1480
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1480
> Project: TinkerPop
> Issue Type: Improvement
> Components: process
> Affects Versions: 3.2.2
> Reporter: Marko A. Rodriguez
> Assignee: Marko A. Rodriguez
>
> {code}
> gremlin>
> g.V().filter(has('name','marko')).match(__.as('a').has('age',32),__.as('a').out('knows').as('b')).where('a',neq('b')).select('a').by('name').explain()
> ==>Traversal Explanation
> ==========================================================================================================================================================================================================================================================================================================================
> Original Traversal [GraphStep(vertex,[]),
> TraversalFilterStep([HasStep([name.eq(marko)])]),
> MatchStep(AND,[[MatchStartStep(a), HasStep([age.eq(32)]), MatchEndStep],
> [MatchStartStep(a), VertexStep(OUT,[knows],vertex), MatchEndStep(b)]]),
> WherePredicateStep(a,neq(b)), SelectOneStep(a,value(name))]
> ConnectiveStrategy [D] [GraphStep(vertex,[]),
> TraversalFilterStep([HasStep([name.eq(marko)])]),
> MatchStep(AND,[[MatchStartStep(a), HasStep([age.eq(32)]), MatchEndStep],
> [MatchStartStep(a), VertexStep(OUT,[knows],vertex), MatchEndStep(b)]]),
> WherePredicateStep(a,neq(b)), SelectOneStep(a,value(name))]
> IncidentToAdjacentStrategy [O] [GraphStep(vertex,[]),
> TraversalFilterStep([HasStep([name.eq(marko)])]),
> MatchStep(AND,[[MatchStartStep(a), HasStep([age.eq(32)]), MatchEndStep],
> [MatchStartStep(a), VertexStep(OUT,[knows],vertex), MatchEndStep(b)]]),
> WherePredicateStep(a,neq(b)), SelectOneStep(a,value(name))]
> AdjacentToIncidentStrategy [O] [GraphStep(vertex,[]),
> TraversalFilterStep([HasStep([name.eq(marko)])]),
> MatchStep(AND,[[MatchStartStep(a), HasStep([age.eq(32)]), MatchEndStep],
> [MatchStartStep(a), VertexStep(OUT,[knows],vertex), MatchEndStep(b)]]),
> WherePredicateStep(a,neq(b)), SelectOneStep(a,value(name))]
> InlineFilterStrategy [O] [GraphStep(vertex,[]),
> HasStep([name.eq(marko)])@[a], HasStep([age.eq(32)]),
> MatchStep(AND,[[MatchStartStep(a), VertexStep(OUT,[knows],vertex),
> MatchEndStep(b)]]), WherePredicateStep(a,neq(b)),
> SelectOneStep(a,value(name))]
> MatchPredicateStrategy [O] [GraphStep(vertex,[]),
> HasStep([name.eq(marko)])@[a], HasStep([age.eq(32)]),
> MatchStep(AND,[[MatchStartStep(a), VertexStep(OUT,[knows],vertex),
> MatchEndStep(b)], [MatchStartStep(a), WherePredicateStep(neq(b)),
> MatchEndStep]]), SelectOneStep(a,value(name))]
> FilterRankingStrategy [O] [GraphStep(vertex,[]),
> HasStep([name.eq(marko)])@[a], HasStep([age.eq(32)]),
> MatchStep(AND,[[MatchStartStep(a), VertexStep(OUT,[knows],vertex),
> MatchEndStep(b)], [MatchStartStep(a), WherePredicateStep(neq(b)),
> MatchEndStep]]), SelectOneStep(a,value(name))]
> RepeatUnrollStrategy [O] [GraphStep(vertex,[]),
> HasStep([name.eq(marko)])@[a], HasStep([age.eq(32)]),
> MatchStep(AND,[[MatchStartStep(a), VertexStep(OUT,[knows],vertex),
> MatchEndStep(b)], [MatchStartStep(a), WherePredicateStep(neq(b)),
> MatchEndStep]]), SelectOneStep(a,value(name))]
> RangeByIsCountStrategy [O] [GraphStep(vertex,[]),
> HasStep([name.eq(marko)])@[a], HasStep([age.eq(32)]),
> MatchStep(AND,[[MatchStartStep(a), VertexStep(OUT,[knows],vertex),
> MatchEndStep(b)], [MatchStartStep(a), WherePredicateStep(neq(b)),
> MatchEndStep]]), SelectOneStep(a,value(name))]
> PathRetractionStrategy [O] [GraphStep(vertex,[]),
> HasStep([name.eq(marko)])@[a], HasStep([age.eq(32)]),
> MatchStep(AND,[[MatchStartStep(a), VertexStep(OUT,[knows],vertex),
> MatchEndStep(b)], [MatchStartStep(a), WherePredicateStep(neq(b)),
> MatchEndStep]]), SelectOneStep(a,value(name)), NoOpBarrierStep(2500)]
> TinkerGraphStepStrategy [P] [TinkerGraphStep(vertex,[name.eq(marko),
> age.eq(32)])@[a], MatchStep(AND,[[MatchStartStep(a),
> VertexStep(OUT,[knows],vertex), MatchEndStep(b)], [MatchStartStep(a),
> WherePredicateStep(neq(b)), MatchEndStep]]), SelectOneStep(a,value(name)),
> NoOpBarrierStep(2500)]
> ProfileStrategy [F] [TinkerGraphStep(vertex,[name.eq(marko),
> age.eq(32)])@[a], MatchStep(AND,[[MatchStartStep(a),
> VertexStep(OUT,[knows],vertex), MatchEndStep(b)], [MatchStartStep(a),
> WherePredicateStep(neq(b)), MatchEndStep]]), SelectOneStep(a,value(name)),
> NoOpBarrierStep(2500)]
> StandardVerificationStrategy [V] [TinkerGraphStep(vertex,[name.eq(marko),
> age.eq(32)])@[a], MatchStep(AND,[[MatchStartStep(a),
> VertexStep(OUT,[knows],vertex), MatchEndStep(b)], [MatchStartStep(a),
> WherePredicateStep(neq(b)), MatchEndStep]]), SelectOneStep(a,value(name)),
> NoOpBarrierStep(2500)]
> Final Traversal [TinkerGraphStep(vertex,[name.eq(marko),
> age.eq(32)])@[a], MatchStep(AND,[[MatchStartStep(a),
> VertexStep(OUT,[knows],vertex), MatchEndStep(b)], [MatchStartStep(a),
> WherePredicateStep(neq(b)), MatchEndStep]]), SelectOneStep(a,value(name)),
> NoOpBarrierStep(2500)]
> {code}
> I don't think we should add the {{NoOpBarrierStep}} at the end. Need to think
> it through though...
> [~spmallette]: GremlinServer tries to "bulk the stream" before sending back
> over the wire, right?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)