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