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

Marko A. Rodriguez commented on TINKERPOP3-871:
-----------------------------------------------

Sorry -- this would live in the {{BiFunction}} of the {{ReducingBarrierStep}}. 
Look at {{SumStep}}. Now just imagine that it keeps track of the most "general" 
{{Number}} class where the hiearchy is: {{Integer->Long->Double}}.

https://github.com/apache/incubator-tinkerpop/blob/master/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/SumGlobalStep.java#L69-L85

> RuntimeStrategy as the general model for all such execution time 
> rewrites/re-orders
> -----------------------------------------------------------------------------------
>
>                 Key: TINKERPOP3-871
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP3-871
>             Project: TinkerPop 3
>          Issue Type: New Feature
>          Components: process
>    Affects Versions: 3.0.1-incubating
>            Reporter: Marko A. Rodriguez
>            Assignee: Marko A. Rodriguez
>
> {{TraversalStrategies}} are used at compile time to translate a traversal 
> into a more optimal, graph system specific, or decorated traversal. These all 
> execute at compile time. However, we also have {{MatchAlgorithm}} which is 
> used by {{MatchStep}} to do runtime analysis and resort patterns accordingly. 
> I would like to make {{MatchAlgorithm}} implement {{RuntimeStrategy}} and 
> start to build out a collection of {{RuntimeStrategies}}. Where else could we 
> leverage runtime analysis:
> * {{OrStep}} and {{AndStep}} -- which pattern is filtering fastest? Do that 
> first.
> * {{MatchStep}} -- already using it with {{CountMatchAlgorithm}} and pattern 
> sorting.
> * ??? 
> ... can't think, there are probably more.



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

Reply via email to