You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by ok...@apache.org on 2016/09/27 19:47:19 UTC

tinkerpop git commit: didn't realize TailGlobalStep was NOT a FilterStep. Minor tweak. CTR.

Repository: tinkerpop
Updated Branches:
  refs/heads/master 083b8e44c -> 4821dbcfb


didn't realize TailGlobalStep was NOT a FilterStep. Minor tweak. CTR.


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/4821dbcf
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/4821dbcf
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/4821dbcf

Branch: refs/heads/master
Commit: 4821dbcfba4b2370089d8d71c4dbf71ae10b9903
Parents: 083b8e4
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Tue Sep 27 13:47:08 2016 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Tue Sep 27 13:47:08 2016 -0600

----------------------------------------------------------------------
 .../strategy/optimization/InlineFilterStrategy.java       |  3 ---
 .../strategy/optimization/TinkerGraphStepStrategy.java    | 10 +++++++++-
 2 files changed, 9 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4821dbcf/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/InlineFilterStrategy.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/InlineFilterStrategy.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/InlineFilterStrategy.java
index c3f913e..7452b3b 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/InlineFilterStrategy.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/InlineFilterStrategy.java
@@ -30,7 +30,6 @@ import org.apache.tinkerpop.gremlin.process.traversal.step.filter.DropStep;
 import org.apache.tinkerpop.gremlin.process.traversal.step.filter.FilterStep;
 import org.apache.tinkerpop.gremlin.process.traversal.step.filter.HasStep;
 import org.apache.tinkerpop.gremlin.process.traversal.step.filter.RangeGlobalStep;
-import org.apache.tinkerpop.gremlin.process.traversal.step.filter.TailGlobalStep;
 import org.apache.tinkerpop.gremlin.process.traversal.step.filter.TraversalFilterStep;
 import org.apache.tinkerpop.gremlin.process.traversal.step.map.MatchStep;
 import org.apache.tinkerpop.gremlin.process.traversal.step.util.EmptyStep;
@@ -80,7 +79,6 @@ public final class InlineFilterStrategy extends AbstractTraversalStrategy<Traver
                         !TraversalHelper.hasStepOfClass(childTraversal,
                                 DropStep.class,
                                 RangeGlobalStep.class,
-                                TailGlobalStep.class,
                                 DedupGlobalStep.class,
                                 LambdaHolder.class)) {
                     changed = true;
@@ -99,7 +97,6 @@ public final class InlineFilterStrategy extends AbstractTraversalStrategy<Traver
                             TraversalHelper.hasStepOfClass(childTraversal,
                                     DropStep.class,
                                     RangeGlobalStep.class,
-                                    TailGlobalStep.class,
                                     DedupGlobalStep.class,
                                     LambdaHolder.class)) {
                         process = false;

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4821dbcf/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/process/traversal/strategy/optimization/TinkerGraphStepStrategy.java
----------------------------------------------------------------------
diff --git a/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/process/traversal/strategy/optimization/TinkerGraphStepStrategy.java b/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/process/traversal/strategy/optimization/TinkerGraphStepStrategy.java
index 97d30e9..fc3748f 100644
--- a/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/process/traversal/strategy/optimization/TinkerGraphStepStrategy.java
+++ b/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/process/traversal/strategy/optimization/TinkerGraphStepStrategy.java
@@ -22,7 +22,11 @@ import org.apache.tinkerpop.gremlin.process.traversal.Step;
 import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
 import org.apache.tinkerpop.gremlin.process.traversal.TraversalStrategy;
 import org.apache.tinkerpop.gremlin.process.traversal.step.HasContainerHolder;
+import org.apache.tinkerpop.gremlin.process.traversal.step.LambdaHolder;
+import org.apache.tinkerpop.gremlin.process.traversal.step.filter.DedupGlobalStep;
+import org.apache.tinkerpop.gremlin.process.traversal.step.filter.DropStep;
 import org.apache.tinkerpop.gremlin.process.traversal.step.filter.FilterStep;
+import org.apache.tinkerpop.gremlin.process.traversal.step.filter.RangeGlobalStep;
 import org.apache.tinkerpop.gremlin.process.traversal.step.map.GraphStep;
 import org.apache.tinkerpop.gremlin.process.traversal.step.util.HasContainer;
 import org.apache.tinkerpop.gremlin.process.traversal.strategy.AbstractTraversalStrategy;
@@ -49,7 +53,11 @@ public final class TinkerGraphStepStrategy extends AbstractTraversalStrategy<Tra
             TraversalHelper.replaceStep(originalGraphStep, (Step) tinkerGraphStep, traversal);
             Step<?, ?> lastNonHolderStep = tinkerGraphStep;
             Step<?, ?> currentStep = tinkerGraphStep.getNextStep();
-            while (currentStep instanceof HasContainerHolder || currentStep instanceof FilterStep) {
+            while (currentStep instanceof FilterStep &&
+                    !(currentStep instanceof DedupGlobalStep) &&
+                    !(currentStep instanceof RangeGlobalStep) &&
+                    !(currentStep instanceof DropStep) &&
+                    !(currentStep instanceof LambdaHolder)) {
                 if (currentStep instanceof HasContainerHolder) {
                     for (final HasContainer hasContainer : ((HasContainerHolder) currentStep).getHasContainers()) {
                         if (!GraphStep.processHasContainerIds(tinkerGraphStep, hasContainer))