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 2017/01/19 21:07:05 UTC

[44/50] [abbrv] tinkerpop git commit: every ActorSystem needs a unique system name. Thus, every GraphActors submit() needs it. Added UUID creation.

every ActorSystem needs a unique system name. Thus, every GraphActors submit() needs it. Added UUID creation.


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

Branch: refs/heads/TINKERPOP-1564
Commit: 46a6a3b89ea4c447ce9c2f5c75a950d6228e0008
Parents: 36e47f3
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Fri Jan 13 11:47:26 2017 -0700
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Thu Jan 19 13:01:41 2017 -0700

----------------------------------------------------------------------
 .../conf/akka-tinkerpop-modern.properties         |  2 --
 .../akka/process/actors/AkkaConfigFactory.java    | 18 ++++++++----------
 .../akka/process/actors/AkkaGraphActors.java      |  7 +++++--
 .../gremlin/akka/process/actors/Constants.java    |  1 +
 .../gremlin/akka/process/actors/MasterActor.java  |  2 +-
 .../akka/process/actors/AkkaActorsProvider.java   |  2 --
 6 files changed, 15 insertions(+), 17 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/46a6a3b8/akka-gremlin/conf/akka-tinkerpop-modern.properties
----------------------------------------------------------------------
diff --git a/akka-gremlin/conf/akka-tinkerpop-modern.properties b/akka-gremlin/conf/akka-tinkerpop-modern.properties
index 47caf49..195449b 100644
--- a/akka-gremlin/conf/akka-tinkerpop-modern.properties
+++ b/akka-gremlin/conf/akka-tinkerpop-modern.properties
@@ -28,6 +28,4 @@ akka.actor.provider=remote
 akka.remote.enabled-transports=akka.remote.netty.tcp
 akka.remote.netty.tcp.hostname=127.0.0.1
 akka.remote.netty.tcp.port=2552
-akka.cluster.seed-nodes=akka.tcp://tinkerpop@127.0.0.1:2552
-akka.cluster.auto-down-unreachable-after=10s
 akka.log-dead-letters-during-shutdown=false
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/46a6a3b8/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaConfigFactory.java
----------------------------------------------------------------------
diff --git a/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaConfigFactory.java b/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaConfigFactory.java
index 6364de3..d1bab75 100644
--- a/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaConfigFactory.java
+++ b/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaConfigFactory.java
@@ -29,14 +29,10 @@ import org.apache.commons.configuration.Configuration;
 import org.apache.tinkerpop.gremlin.akka.process.actors.io.gryo.GryoSerializer;
 import org.apache.tinkerpop.gremlin.process.actors.ActorProgram;
 import org.apache.tinkerpop.gremlin.structure.Partition;
-import org.apache.tinkerpop.gremlin.util.ClassUtil;
 
 import java.util.Collection;
 import java.util.Collections;
-import java.util.HashMap;
 import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
 import java.util.stream.Collectors;
 
 /**
@@ -80,13 +76,15 @@ final class AkkaConfigFactory {
             return value;
     }
 
-    static Address getMasterActorDeployment(final Config config) {
-        final List<String> seedNodes = config.getStringList(Constants.AKKA_CLUSTER_SEED_NODES);
-        return AddressFromURIString.parse(seedNodes.get(0));
+    static Address getMasterActorDeployment(final Configuration configuration) {
+        final String hostName = configuration.getString(Constants.AKKA_REMOTE_NETTY_TCP_HOSTNAME);
+        final String port = configuration.getProperty(Constants.AKKA_REMOTE_NETTY_TCP_PORT).toString();
+        return AddressFromURIString.parse("akka.tcp://" + configuration.getString(Constants.GREMLIN_AKKA_SYSTEM_NAME) + "@" + hostName + ":" + port);
     }
 
-    static Address getWorkerActorDeployment(final Partition partition) {
-        final String location = partition.location().isSiteLocalAddress() ? "127.0.0.1" : partition.location().getHostAddress().toString();
-        return AddressFromURIString.parse("akka.tcp://tinkerpop@" + location + ":2552");
+    static Address getWorkerActorDeployment(final Configuration configuration, final Partition partition) {
+        final String hostName = partition.location().isSiteLocalAddress() ? "127.0.0.1" : partition.location().getHostAddress().toString();
+        final String port = configuration.getProperty(Constants.AKKA_REMOTE_NETTY_TCP_PORT).toString();
+        return AddressFromURIString.parse("akka.tcp://" + configuration.getString(Constants.GREMLIN_AKKA_SYSTEM_NAME) + "@" + hostName + ":" + port);
     }
 }

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/46a6a3b8/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaGraphActors.java
----------------------------------------------------------------------
diff --git a/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaGraphActors.java b/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaGraphActors.java
index 04bd071..61c4439 100644
--- a/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaGraphActors.java
+++ b/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaGraphActors.java
@@ -36,6 +36,7 @@ import org.apache.tinkerpop.gremlin.structure.Graph;
 import org.apache.tinkerpop.gremlin.structure.util.StringFactory;
 import org.apache.tinkerpop.gremlin.util.config.SerializableConfiguration;
 
+import java.util.UUID;
 import java.util.concurrent.CompletableFuture;
 import java.util.concurrent.Future;
 
@@ -84,13 +85,15 @@ public final class AkkaGraphActors<R> implements GraphActors<R> {
             throw new IllegalStateException("Can not execute twice");
         this.executed = true;
         ///////
+        final String systemName = "tinkerpop-" + UUID.randomUUID();
         final Configuration finalConfiguration = new SerializableConfiguration(graph.configuration());
         ConfigurationUtils.copy(this.configuration, finalConfiguration);
+        finalConfiguration.setProperty(Constants.GREMLIN_AKKA_SYSTEM_NAME, systemName);
         final Config config = AkkaConfigFactory.generateAkkaConfig(this.actorProgram, finalConfiguration);
-        final ActorSystem system = ActorSystem.create("tinkerpop", config);
+        final ActorSystem system = ActorSystem.create(systemName, config);
         final ActorsResult<R> result = new DefaultActorsResult<>();
         ///////
-        final akka.actor.Address masterAddress = AkkaConfigFactory.getMasterActorDeployment(config);
+        final akka.actor.Address masterAddress = AkkaConfigFactory.getMasterActorDeployment(finalConfiguration);
         system.actorOf(Props.create(MasterActor.class, finalConfiguration, result).withDeploy(new Deploy(new RemoteScope(masterAddress))), "master");
 
         return CompletableFuture.supplyAsync(() -> {

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/46a6a3b8/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/Constants.java
----------------------------------------------------------------------
diff --git a/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/Constants.java b/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/Constants.java
index dacdd2d..ed4f383 100644
--- a/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/Constants.java
+++ b/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/Constants.java
@@ -37,5 +37,6 @@ public final class Constants {
     public static final String AKKA_REMOTE_NETTY_TCP_PORT = "akka.remote.netty.tcp.port";
     public static final String AKKA_CLUSTER_SEED_NODES = "akka.cluster.seed-nodes";
     public static final String AKKA_CLUSTER_AUTO_DOWN_UNREACHABLE_AFTER = "akka.cluster.auto-down-unreachable-after";
+    public static final String GREMLIN_AKKA_SYSTEM_NAME = "gremlin.akka.system-name";
 
 }

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/46a6a3b8/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/MasterActor.java
----------------------------------------------------------------------
diff --git a/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/MasterActor.java b/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/MasterActor.java
index 4fbfd94..e54146b 100644
--- a/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/MasterActor.java
+++ b/akka-gremlin/src/main/java/org/apache/tinkerpop/gremlin/akka/process/actors/MasterActor.java
@@ -75,7 +75,7 @@ public final class MasterActor extends AbstractActor implements RequiresMessageQ
             this.workers.add(workerAddress);
             context().actorOf(
                     Props.create(WorkerActor.class, configuration, partition.id(), this.master)
-                            .withDeploy(new Deploy(new RemoteScope(AkkaConfigFactory.getWorkerActorDeployment(partition)))),
+                            .withDeploy(new Deploy(new RemoteScope(AkkaConfigFactory.getWorkerActorDeployment(configuration, partition)))),
                     workerAddress.getId());
         }
         this.masterProgram = actorProgram.createMasterProgram(this);

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/46a6a3b8/akka-gremlin/src/test/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaActorsProvider.java
----------------------------------------------------------------------
diff --git a/akka-gremlin/src/test/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaActorsProvider.java b/akka-gremlin/src/test/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaActorsProvider.java
index 8fd2239..94d7373 100644
--- a/akka-gremlin/src/test/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaActorsProvider.java
+++ b/akka-gremlin/src/test/java/org/apache/tinkerpop/gremlin/akka/process/actors/AkkaActorsProvider.java
@@ -144,8 +144,6 @@ public class AkkaActorsProvider extends AbstractGraphProvider {
             put(Constants.AKKA_REMOTE_ENABLED_TRANSPORTS, Collections.singletonList("akka.remote.netty.tcp"));
             put(Constants.AKKA_REMOTE_NETTY_TCP_HOSTNAME, "127.0.0.1");
             put(Constants.AKKA_REMOTE_NETTY_TCP_PORT, 2552);
-            put(Constants.AKKA_CLUSTER_SEED_NODES, Collections.singletonList("akka.tcp://tinkerpop@127.0.0.1:2552"));
-            put(Constants.AKKA_CLUSTER_AUTO_DOWN_UNREACHABLE_AFTER, "10s");
         }};
     }