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/12/12 22:12:27 UTC
tinkerpop git commit: realized we don't use stepId in hashCode().
eek. work around in actors system.
Repository: tinkerpop
Updated Branches:
refs/heads/TINKERPOP-1564 5ef9e2b20 -> 3035bbcfd
realized we don't use stepId in hashCode(). eek. work around in actors system.
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/3035bbcf
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/3035bbcf
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/3035bbcf
Branch: refs/heads/TINKERPOP-1564
Commit: 3035bbcfd4862648230b90f8591479db95c94f20
Parents: 5ef9e2b
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Mon Dec 12 15:12:24 2016 -0700
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Mon Dec 12 15:12:24 2016 -0700
----------------------------------------------------------------------
.../tinkergraph/process/akka/MasterTraversalActor.java | 8 +++-----
.../gremlin/tinkergraph/process/akka/TinkerActorSystem.java | 5 +++--
.../gremlin/tinkergraph/process/akka/TraverserMailbox.java | 8 +++++---
.../tinkergraph/process/akka/WorkerTraversalActor.java | 6 +++---
4 files changed, 14 insertions(+), 13 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/3035bbcf/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/MasterTraversalActor.java
----------------------------------------------------------------------
diff --git a/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/MasterTraversalActor.java b/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/MasterTraversalActor.java
index 834beab..2bf62eb 100644
--- a/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/MasterTraversalActor.java
+++ b/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/MasterTraversalActor.java
@@ -47,10 +47,8 @@ import org.apache.tinkerpop.gremlin.tinkergraph.process.akka.messages.StartMessa
import org.apache.tinkerpop.gremlin.tinkergraph.process.akka.messages.VoteToHaltMessage;
import java.util.HashMap;
-import java.util.HashSet;
import java.util.List;
import java.util.Map;
-import java.util.Set;
/**
* @author Marko A. Rodriguez (http://markorodriguez.com)
@@ -61,7 +59,7 @@ public final class MasterTraversalActor extends AbstractActor implements Require
private final TraversalMatrix<?, ?> matrix;
private final Partitioner partitioner;
private final Map<String, ActorSelection> workers = new HashMap<>();
- private Set<Barrier> barriers = new HashSet<>();
+ private Map<String, Barrier> barriers = new HashMap<>();
private final TraverserSet<?> results;
private final String leaderWorker;
@@ -91,7 +89,7 @@ public final class MasterTraversalActor extends AbstractActor implements Require
final Step<?, ?> step = (Step) barrier;
GraphComputing.atMaster(step, true);
barrier.addBarrier(barrierMerge.getBarrier());
- this.barriers.add(barrier);
+ this.barriers.put(step.getId(), barrier);
}).
match(SideEffectAddMessage.class, sideEffect -> {
// get the side-effect updates from the workers to generate the master side-effects
@@ -100,7 +98,7 @@ public final class MasterTraversalActor extends AbstractActor implements Require
match(VoteToHaltMessage.class, voteToHalt -> {
assert !sender().equals(self());
if (!this.barriers.isEmpty()) {
- for (final Barrier barrier : this.barriers) {
+ for (final Barrier barrier : this.barriers.values()) {
final Step<?, ?> step = (Step) barrier;
if (!(barrier instanceof LocalBarrier)) {
while (step.hasNext()) {
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/3035bbcf/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/TinkerActorSystem.java
----------------------------------------------------------------------
diff --git a/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/TinkerActorSystem.java b/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/TinkerActorSystem.java
index 53ff18f..461ebe3 100644
--- a/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/TinkerActorSystem.java
+++ b/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/TinkerActorSystem.java
@@ -36,6 +36,7 @@ import java.util.concurrent.CompletableFuture;
import java.util.concurrent.Future;
import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.count;
+import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.inE;
import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.out;
import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.outE;
@@ -68,8 +69,8 @@ public final class TinkerActorSystem<S, E> {
final Graph graph = TinkerGraph.open();
graph.io(GryoIo.build()).readGraph("data/tinkerpop-modern.kryo");
GraphTraversalSource g = graph.traversal().withStrategies(new PartitionerStrategy(new HashPartitioner(graph.partitioner(), 3)));
- System.out.println(g.V().order().by(outE().count(), Order.decr).toList());
- // 1406914
+ System.out.println(g.V(1, 2).union(outE().count(), inE().count(), (Traversal) outE().values("weight").sum()).toList());
+ //3, 1.9, 1
/*for (int i = 0; i < 10000; i++) {
final Graph graph = TinkerGraph.open();
graph.io(GryoIo.build()).readGraph("data/tinkerpop-modern.kryo");
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/3035bbcf/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/TraverserMailbox.java
----------------------------------------------------------------------
diff --git a/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/TraverserMailbox.java b/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/TraverserMailbox.java
index c76e71f..585b967 100644
--- a/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/TraverserMailbox.java
+++ b/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/TraverserMailbox.java
@@ -55,11 +55,13 @@ public final class TraverserMailbox implements MailboxType, ProducesMessageQueue
synchronized (MUTEX) {
if (handle.message() instanceof Traverser.Admin)
this.traverserMessages.offer((Traverser.Admin) handle.message());
- else if (handle.message() instanceof VoteToHaltMessage)
+ else if (handle.message() instanceof VoteToHaltMessage) {
+ assert null == this.haltMessages;
this.haltMessages = handle;
- else if (handle.message() instanceof WorkerTraversalActor.Terminate)
+ } else if (handle.message() instanceof WorkerTraversalActor.Terminate) {
+ assert null == this.terminateToken;
this.terminateToken = handle;
- else
+ } else
this.otherMessages.offer(handle);
}
}
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/3035bbcf/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/WorkerTraversalActor.java
----------------------------------------------------------------------
diff --git a/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/WorkerTraversalActor.java b/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/WorkerTraversalActor.java
index b6e90d5..da8a942 100644
--- a/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/WorkerTraversalActor.java
+++ b/tinkergraph-gremlin/src/test/java/org/apache/tinkerpop/gremlin/tinkergraph/process/akka/WorkerTraversalActor.java
@@ -69,7 +69,7 @@ public final class WorkerTraversalActor extends AbstractActor implements Require
private boolean isLeader;
private Terminate terminate = null;
private boolean voteToHalt = false;
- private Set<Barrier> barriers = new HashSet<>();
+ private Map<String,Barrier> barriers = new HashMap<>();
public WorkerTraversalActor(final Traversal.Admin<?, ?> traversal, final Partition localPartition, final Partitioner partitioner) {
System.out.println("worker[created]: " + self().path());
@@ -129,7 +129,7 @@ public final class WorkerTraversalActor extends AbstractActor implements Require
match(VoteToHaltMessage.class, haltSync -> {
// if there is a barrier and thus, halting at barrier, then process barrier
if (!this.barriers.isEmpty()) {
- for (final Barrier barrier : this.barriers) {
+ for (final Barrier barrier : this.barriers.values()) {
while (barrier.hasNextBarrier()) {
master().tell(new BarrierAddMessage(barrier), self());
}
@@ -160,7 +160,7 @@ public final class WorkerTraversalActor extends AbstractActor implements Require
GraphComputing.atMaster(step, false);
step.addStart(traverser);
if (step instanceof Barrier) {
- this.barriers.add((Barrier) step);
+ this.barriers.put(step.getId(),(Barrier) step);
} else {
while (step.hasNext()) {
this.sendTraverser(step.next());