You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by "stephen mallette (JIRA)" <ji...@apache.org> on 2017/02/15 00:44:43 UTC

[jira] [Updated] (TINKERPOP-966) Support reversible traversals in MatchStep (and respective MatchAlgorithms)

     [ https://issues.apache.org/jira/browse/TINKERPOP-966?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

stephen mallette updated TINKERPOP-966:
---------------------------------------
    Fix Version/s:     (was: 3.2.4)
                   3.2.5

> Support reversible traversals in MatchStep (and respective MatchAlgorithms)
> ---------------------------------------------------------------------------
>
>                 Key: TINKERPOP-966
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-966
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: process
>    Affects Versions: 3.1.0-incubating
>            Reporter: Marko A. Rodriguez
>            Assignee: Marko A. Rodriguez
>             Fix For: 3.2.5
>
>
> We currently do not support the reversing of a traversal. Thus,
> {code}
> g.V().match(
>   as("a").out("knows").as("b")
>   as("c").out("knows").as("a"))
> {code}
> will throw an exception saying that it can't compute the patterns. If we can convert {{as("c").out("knows").as("a")}} to {{as("a").in("knows").as("c")}} then this will work. Furthermore, we need a way to have two versions of a traversal pattern available. For instance:
> {code}
> g.V().match(
>   as("a").out("knows").as("b")
>   as("a").out("friend").as("b"))
> {code}
> Given the above patterns, it is possible for both patterns to have a standard and a "reversed-form" that can be selected dynamically given the match-path-history and pattern statistics. Thus, we need a way to have all four patterns able to be selected but once one of the two-pair is selected for a traverser, it can't use the other.
> In short, we need {{TraversalHelper.reverse(Traversal)}} and {{MathStep.MatchAlgorithm}} book-keeping data structures.
> cc/ [~mbroecheler]



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)