[
https://issues.apache.org/jira/browse/TINKERPOP-1545?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15659683#comment-15659683
]
ASF GitHub Bot commented on TINKERPOP-1545:
-------------------------------------------
Github user dkuppitz commented on the issue:
https://github.com/apache/tinkerpop/pull/486
Requirements were not cached in `tp31`. I have a neat solution for
`master/`, but not for `tp32`. In `tp32` we can either reset the requirements
after each strategy has been applied or we can ignore the caching, which - in
the worst case - would make the traversal assume, that it has more requirements
than it actually has. This is the only case I can currently think of:
When `IncidentToAdjacentStrategy` replaces `bothE().otherV()` with
`both()`, the traversal could lose its `PATH` requirement.
> IncidentToAdjacentStrategy is buggy
> -----------------------------------
>
> Key: TINKERPOP-1545
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1545
> Project: TinkerPop
> Issue Type: Bug
> Components: process
> Affects Versions: 3.1.4, 3.2.3
> Reporter: Daniel Kuppitz
> Assignee: Daniel Kuppitz
>
> {{IncidentToAdjacentStrategy}} turns {{outE().inV().simplePath()}} into
> {{out().simplePath()}}, which will return a wrong result as soon as there is
> more than 1 edge between a pair of vertices.
> The set {{INVALIDATING_STEP_CLASSES}} should only contain
> {{PathProcessor.class}} and {{LambdaHolder.class}} Furthermore
> {{SimplePathStep}} should implement {{PathProcessor}}.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)