You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by jo...@apache.org on 2017/11/22 14:46:55 UTC

[02/50] [abbrv] tinkerpop git commit: TINKERPOP-1801: fix test failures. TinkerPopComputer does not call ComputerPorgram.execute methods if spit has no vertices. For example: modern graph has 6 vertices but computer has 8 cores, there will be two empty s

TINKERPOP-1801: fix test failures.
TinkerPopComputer does not call ComputerPorgram.execute methods if spit has no vertices.
For example: modern graph has 6 vertices but computer has 8 cores, there will be two empty splits.
TraversalVertexProgram use execute step to setup next profiling step, so it is not setup side effects properly for empty splits.
So tests did not filed in docker but failed on computer with more then 6 cores.
The fix add check that profile side effects were regester properly before using


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

Branch: refs/heads/TINKERPOP-1489
Commit: b49f751ec4755fa026d6705511a2448e543cb430
Parents: a9ca781
Author: artemaliev <artem.aliev@gmail,com>
Authored: Mon Oct 30 16:10:20 2017 +0300
Committer: artemaliev <artem.aliev@gmail,com>
Committed: Mon Oct 30 16:20:12 2017 +0300

----------------------------------------------------------------------
 .../process/computer/traversal/MemoryTraversalSideEffects.java  | 5 +++++
 .../process/computer/traversal/TraversalVertexProgram.java      | 4 +++-
 2 files changed, 8 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/b49f751e/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/MemoryTraversalSideEffects.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/MemoryTraversalSideEffects.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/MemoryTraversalSideEffects.java
index bf9f8c0..deea2a5 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/MemoryTraversalSideEffects.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/MemoryTraversalSideEffects.java
@@ -169,6 +169,11 @@ public final class MemoryTraversalSideEffects implements TraversalSideEffects {
         memoryTraversalSideEffects.phase = phase;
     }
 
+    public static ProgramPhase getMemorySideEffectsPhase(final Traversal.Admin<?, ?> traversal) {
+        return traversal.getSideEffects() instanceof MemoryTraversalSideEffects ?
+                ((MemoryTraversalSideEffects)traversal.getSideEffects()).phase:null;
+    }
+
     public static Set<MemoryComputeKey> getMemoryComputeKeys(final Traversal.Admin<?, ?> traversal) {
         final Set<MemoryComputeKey> keys = new HashSet<>();
         final TraversalSideEffects sideEffects =

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/b49f751e/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/TraversalVertexProgram.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/TraversalVertexProgram.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/TraversalVertexProgram.java
index 7472b85..f9a1e34 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/TraversalVertexProgram.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/traversal/TraversalVertexProgram.java
@@ -376,7 +376,9 @@ public final class TraversalVertexProgram implements VertexProgram<TraverserSet<
             iterationMetrics.finish(0);
             // reset counts
             iterationMetrics.setCount(TraversalMetrics.TRAVERSER_COUNT_ID,0);
-            this.traversal.get().getSideEffects().add(profileSteps.get(profileStepIndex).getId(), iterationMetrics);
+            if (null != MemoryTraversalSideEffects.getMemorySideEffectsPhase(this.traversal.get())) {
+                this.traversal.get().getSideEffects().add(profileSteps.get(profileStepIndex).getId(), iterationMetrics);
+            }
             iterationMetrics = null;
         }
     }