[ 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)