[ https://issues.apache.org/jira/browse/TINKERPOP-2325?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17013504#comment-17013504 ]
Marco Valzelli commented on TINKERPOP-2325: ------------------------------------------- On which repository you meant I should pull my changes? > Generate traversals that will better yield index lookups with SPARQL > -------------------------------------------------------------------- > > Key: TINKERPOP-2325 > URL: https://issues.apache.org/jira/browse/TINKERPOP-2325 > Project: TinkerPop > Issue Type: Improvement > Components: sparql > Affects Versions: 3.4.4 > Reporter: Stephen Mallette > Priority: Major > > The following simple bit of SPARQL generates a {{match()}} that wont easily > be converted to further utilize indices. > {code} > gremlin> s.sparql("SELECT ?x WHERE { ?x v:name 'marko' }").explain() > ==>Traversal Explanation > =========================================================================================================================================================================================== > Original Traversal [InjectStep([SELECT ?x WHERE { ?x v:name > 'marko' }])] > ConnectiveStrategy [D] [InjectStep([SELECT ?x WHERE { ?x v:name > 'marko' }])] > SparqlStrategy [D] [GraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > MatchPredicateStrategy [O] [GraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > FilterRankingStrategy [O] [GraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > EarlyLimitStrategy [O] [GraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > InlineFilterStrategy [O] [GraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > IncidentToAdjacentStrategy [O] [GraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > AdjacentToIncidentStrategy [O] [GraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > RepeatUnrollStrategy [O] [GraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > CountStrategy [O] [GraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > PathRetractionStrategy [O] [GraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > LazyBarrierStrategy [O] [GraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > TinkerGraphCountStrategy [P] [GraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > TinkerGraphStepStrategy [P] [TinkerGraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > ProfileStrategy [F] [TinkerGraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > StandardVerificationStrategy [V] [TinkerGraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > Final Traversal [TinkerGraphStep(vertex,[]), > MatchStep(AND,[[MatchStartStep(x), PropertiesStep([name],value), > IsStep(eq(marko)), MatchEndStep]]), SelectOneStep(last,x)] > {code} > {{sparql-gremlin}} needs some improvements in this area. -- This message was sent by Atlassian Jira (v8.3.4#803005)