[ 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)