[ https://issues.apache.org/jira/browse/TINKERPOP-3045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17814539#comment-17814539 ]
ASF GitHub Bot commented on TINKERPOP-3045: ------------------------------------------- upadhyay-prashant opened a new pull request, #2481: URL: https://github.com/apache/tinkerpop/pull/2481 …and thus causing incorrect results https://issues.apache.org/jira/browse/TINKERPOP-3045 EarlyLimitStrategy was too aggressive to promote limit before map steps. Not all the Map step can be displaced. Specifically if a Map step has capability to filter the results, then it should be displaced. This code change brings in a utility to statically determine the output arity of a step and accordingly allow EarlyLimitStrategy to make a decision whether a map step can be moved. Test is added in Range.feature which ensures that this bug is fixed. This test gives wrong result without this code change. > EarlyLimitStrategy is too aggresive to promote Limit and thus causing > incorrect results > --------------------------------------------------------------------------------------- > > Key: TINKERPOP-3045 > URL: https://issues.apache.org/jira/browse/TINKERPOP-3045 > Project: TinkerPop > Issue Type: Bug > Components: process > Affects Versions: 3.6.6 > Reporter: Prashant > Assignee: Stephen Mallette > Priority: Major > Labels: easyfix > Fix For: 3.6.7 > > > {code:java} > gremlin> g.V().map(__.in().hasId('1')).limit(2).values('name') > ==>marko{code} > {code:java} > gremlin> > g.withoutStrategies(EarlyLimitStrategy).V().map(__.in().hasId('1')).limit(2).values('name') > ==>marko > ==>marko {code} > Early Limit strategy pulls Limit in front of map steps. However not all map > steps allow the cardinality of the results flowing to be same. > > As is shown in example above. -- This message was sent by Atlassian Jira (v8.20.10#820010)