You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by sp...@apache.org on 2017/04/06 11:33:50 UTC
[23/50] tinkerpop git commit: TINKERPOP-1642 Fixed up some execution
problems after rebase
TINKERPOP-1642 Fixed up some execution problems after rebase
The logic still doesn't seem quite right but at least the tests pass and a complete build is achieved. The issue is related to new stuff added in PathRetractionStrategy on TINKERPOP-1652.
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/acc8d739
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/acc8d739
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/acc8d739
Branch: refs/heads/TINKERPOP-1443
Commit: acc8d7399e291a8c9a517d223dea846c1c67d7c3
Parents: 97141da
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Mar 27 14:03:26 2017 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Wed Mar 29 11:22:58 2017 -0400
----------------------------------------------------------------------
.../strategy/optimization/PathRetractionStrategy.java | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/acc8d739/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/PathRetractionStrategy.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/PathRetractionStrategy.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/PathRetractionStrategy.java
index 443e4e3..10e2372 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/PathRetractionStrategy.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/PathRetractionStrategy.java
@@ -78,15 +78,20 @@ public final class PathRetractionStrategy extends AbstractTraversalStrategy<Trav
// do not apply this strategy if a VertexProgramStep is present with LABELED_PATH requirements
if ((traversal.getParent() instanceof EmptyStep || traversal.getParent() instanceof VertexProgramStep) &&
TraversalHelper.anyStepRecursively(step -> step instanceof LambdaHolder ||
- step.getRequirements().contains(TraverserRequirement.PATH) ||
- (step instanceof VertexProgramStep && step.getRequirements().contains(TraverserRequirement.LABELED_PATH)),traversal))
+ step.getRequirements().contains(TraverserRequirement.PATH),traversal)) {
TraversalHelper.applyTraversalRecursively(t -> t.getEndStep().addLabel(MARKER), traversal);
+ }
if (traversal.getEndStep().getLabels().contains(MARKER)) {
traversal.getEndStep().removeLabel(MARKER);
return;
}
+ if (TraversalHelper.anyStepRecursively(step -> step instanceof VertexProgramStep && step.getRequirements().contains(TraverserRequirement.LABELED_PATH),
+ TraversalHelper.getRootTraversal(traversal))) {
+ return;
+ }
+
final boolean onGraphComputer = TraversalHelper.onGraphComputer(traversal);
final Set<String> foundLabels = new HashSet<>();
final Set<String> keepLabels = new HashSet<>();