[ 
https://issues.apache.org/jira/browse/TINKERPOP-1822?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16233574#comment-16233574
 ] 

Robert Dale commented on TINKERPOP-1822:
----------------------------------------

First, I created this ticket to tie together the PR (all good PRs have an issue 
#) and more formally track any decisions.

This came out of the revelation on the user list that {{repeat()}} was not DFS. 
Why is that a revelation? Because until then there were many blanket comments 
on the list that Gremlin is DFS.  In fact, the ref docs even make a blanket 
statement about OLTP being DFS - 
http://tinkerpop.apache.org/docs/current/reference/#distributed-gremlin-gotchas 

That said, I'm not so sure that all other steps are DFS by default. They should 
be identified. It's pretty clear that any {{barrier}} steps would actually 
exhibit BFS behavior.  So this is where I might make the case that 
{{repeat(out())}} should be DFS and then to make it BFS, one would 
{{repeat(out().barrier())}}. Or, keep the existing behavior and allow repeat to 
work locally {{repeat(local, out())}}.  Maybe {{repeat(local(out()))}} already 
works. I don't know.

In any case, both DFS and BFS have well-cemented places in graph search. I 
don't think that's the question. I think the real question is *how does one 
traverse a graph DFS to an arbitrary depth?*

> Repeat should depth first search
> --------------------------------
>
>                 Key: TINKERPOP-1822
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1822
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: process
>    Affects Versions: 3.3.0, 3.2.6
>            Reporter: Robert Dale
>            Priority: Major
>
> Perhaps optionally.
> See also:
> * https://groups.google.com/forum/#!topic/gremlin-users/gLSLxH_K-wE
> * https://github.com/apache/tinkerpop/pull/715



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to