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

stephen mallette reassigned TINKERPOP-1553:
-------------------------------------------

    Assignee: stephen mallette

> AggregateStep should go away in favor of StoreStep.NoOpBarrierStep
> ------------------------------------------------------------------
>
>                 Key: TINKERPOP-1553
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1553
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: process
>    Affects Versions: 3.2.3
>            Reporter: Marko A. Rodriguez
>            Assignee: stephen mallette
>            Priority: Major
>              Labels: breaking
>
> `AggregateStep` can be expressed as `StoreStep.NoOpBarrierStep`. There is no 
> reason to have the extra logic if we don't need it.
> That is:
> {code}
> aggregate('a') => store('a').barrier()
> {code}
> Next, we should get rid of {{aggregate()}} and have two methods:
> {code}
> store(global,'a') => store('a').barrier()
> store(local,'a') => store('a')
> {code}
> If you are storing global that means you are storing every traverser up to 
> the current step. Likewise, store local would only store the current 
> traverser.
> Here is the crappy thing. All of our {{xxx(Scope)}} steps default to 
> {{Scope.global}}: {{range()}}, {{tail()}}, {{count()}}...
> We should probably keep the same pattern of {{Scope.global}} default, but 
> then that means that we would have a breaking change in the API.
> {code}
> store("a") -would-change-to-> store(local,"a")
> {code}
> We should have a {{storeV3d0()}} backward compatibility which would simply 
> use {{store(local,"a")}}. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to