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

Matt Frantz commented on TINKERPOP3-331:
----------------------------------------

At the finest level of granularity, you would identify the traverser that each 
step needs, although some requirements (like {{PATH}}) are sticky by nature.  
Whenever you cross a "requirements boundary", you could insert the step to 
regenerate the traverser.  For example, each child traversal is a potential 
conversion boundary.  How do you balance the performance penalty of 
requirements thrashing against the benefit of exactly meeting the requirements 
of each subtraversal?

> TraverserConverterStep (proposal)
> ---------------------------------
>
>                 Key: TINKERPOP3-331
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP3-331
>             Project: TinkerPop 3
>          Issue Type: Improvement
>          Components: process
>    Affects Versions: 3.0.0-incubating
>            Reporter: Marko A. Rodriguez
>            Assignee: Marko A. Rodriguez
>
> Different {{Traverser}} implementations have different memory requirements 
> and "bulkability." Once the memory of a {{Traverser}} is no longer needed, 
> then it should be converted to a simpler form.
> {code}
> g.V.as('x').out.jump('x',3).simplePath.out('knows').age.groupCount
> |______________________________________||_________________________|
>             PathTraverser                      SimpleTraverser
> {code}
> A {{TraverserConverterStrategy}} should insert a {{TraverserConverterStep}} 
> after {{simplePath()}}.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to