[ https://issues.apache.org/jira/browse/TINKERPOP-1349?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15353698#comment-15353698 ]
Marko A. Rodriguez commented on TINKERPOP-1349: ----------------------------------------------- I don't know what you ran, but {{iterate()}} is smart to use {{traversal.getEndStep()}} and thus doesn't unroll traversers like {{next()}} does. {code} gremlin> graph = TinkerGraph.open() ==>tinkergraph[vertices:0 edges:0] gremlin> graph.io(gryo()).readGraph('data/grateful-dead.kryo') ==>null gremlin> g = graph.traversal() ==>graphtraversalsource[tinkergraph[vertices:808 edges:8049], standard] gremlin> g.getStrategies().removeStrategies(RepeatUnrollStrategy) ==>strategies[ConnectiveStrategy, RangeByIsCountStrategy, IdentityRemovalStrategy, IncidentToAdjacentStrategy, AdjacentToIncidentStrategy, FilterRankingStrategy, MatchPredicateStrategy, TinkerGraphStepStrategy, ProfileStrategy, StandardVerificationStrategy] gremlin> clock(5){g.V().repeat(out()).times(3).iterate()} ==>257.0513638 gremlin> clock(5){g.V().out().out().out().iterate()} ==>729.3921484 gremlin> clock(5){g.V().out().barrier().out().barrier().out().barrier().iterate()} ==>9.738713 gremlin> {code} > RepeatUnrollStrategy should unroll loops while maintaining equivalent > semantics. > -------------------------------------------------------------------------------- > > Key: TINKERPOP-1349 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1349 > Project: TinkerPop > Issue Type: Improvement > Components: process > Affects Versions: 3.2.0-incubating > Reporter: Marko A. Rodriguez > Assignee: Marko A. Rodriguez > Fix For: 3.2.0-incubating > > > Create {{RepeatUnrollStrategy}} that will unroll patterns such as: > {code} > repeat(out()).times(3) > // -> > out().barrier().out().barrier().out().barrier() > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)