You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by dk...@apache.org on 2015/05/05 20:57:45 UTC

[7/9] incubator-tinkerpop git commit: removed optimization from HalfStepTraversalStrategy that broke SubgraphStrategy in some cases

removed optimization from HalfStepTraversalStrategy that broke SubgraphStrategy in some cases


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

Branch: refs/heads/master
Commit: dbd927f58c17f6160fb6a9b83fbbbbf2a89778d3
Parents: 70300e4
Author: Daniel Kuppitz <da...@hotmail.com>
Authored: Tue May 5 20:39:10 2015 +0200
Committer: Daniel Kuppitz <da...@hotmail.com>
Committed: Tue May 5 20:39:10 2015 +0200

----------------------------------------------------------------------
 .../strategy/optimization/HalfStepTraversalStrategy.java     | 8 ++------
 .../strategy/optimization/HalfStepTraversalStrategyTest.java | 4 +---
 2 files changed, 3 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/dbd927f5/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/HalfStepTraversalStrategy.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/HalfStepTraversalStrategy.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/HalfStepTraversalStrategy.java
index dc3ac20..ed37344 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/HalfStepTraversalStrategy.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/HalfStepTraversalStrategy.java
@@ -56,15 +56,11 @@ public class HalfStepTraversalStrategy extends AbstractTraversalStrategy<Travers
                 if (parent instanceof HasTraversalStep) {
                     stepToReplace = curr;
                 }
-            } else if (prev instanceof VertexStep && Vertex.class.equals(((VertexStep) prev).getReturnClass())) {
+            } else if (prev instanceof VertexStep && Vertex.class.equals(((VertexStep) prev).getReturnClass()) ||
+                    prev instanceof PropertiesStep && PropertyType.VALUE.equals(((PropertiesStep) prev).getReturnType())) {
                 if (curr instanceof CountGlobalStep) {
                     stepToReplace = prev;
                 }
-            } else if (curr instanceof CountGlobalStep) {
-                if (prev instanceof VertexStep && Vertex.class.equals(((VertexStep) prev).getReturnClass()) ||
-                        prev instanceof PropertiesStep && PropertyType.VALUE.equals(((PropertiesStep) prev).getReturnType())) {
-                    stepToReplace = prev;
-                }
             }
             if (stepToReplace instanceof VertexStep) {
                 final VertexStep vs = (VertexStep) stepToReplace;

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/dbd927f5/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/HalfStepTraversalStrategyTest.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/HalfStepTraversalStrategyTest.java b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/HalfStepTraversalStrategyTest.java
index ad3a861..67c62d3 100644
--- a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/HalfStepTraversalStrategyTest.java
+++ b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/HalfStepTraversalStrategyTest.java
@@ -124,9 +124,7 @@ public class HalfStepTraversalStrategyTest {
                     {__.has(__.out("knows")), __.has(__.outE("knows"))},
                     {__.values().count(), __.properties().count()},
                     {__.values("name").count(), __.properties("name").count()},
-                    {__.has(__.values()), __.has(__.properties())}/*,
-                    {__.outE().inV().count(), __.outE().count()},
-                    {__.has(__.outE().inV()), __.has(__.outE())}*/});
+                    {__.has(__.values()), __.has(__.properties())}});
         }
     }
 }