Uploaded image for project: 'TinkerPop'
  1. TinkerPop
  2. TINKERPOP-1553

Deprecate store() in favor of aggregate(Scope)

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: 3.2.3
    • Fix Version/s: 3.4.3, 3.5.0
    • Component/s: process
    • Labels:

      Description

      `AggregateStep` can be expressed as `StoreStep.NoOpBarrierStep`. There is no reason to have the extra logic if we don't need it.

      That is:

      aggregate('a') => store('a').barrier()
      

      Next, we should get rid of aggregate() and have two methods:

      store(global,'a') => store('a').barrier()
      store(local,'a') => store('a')
      

      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.

      store("a") -would-change-to-> store(local,"a")
      

      We should have a storeV3d0() backward compatibility which would simply use store(local,"a").

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                spmallette stephen mallette
                Reporter:
                okram Marko A. Rodriguez
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: