You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@helix.apache.org by jx...@apache.org on 2018/07/17 18:37:56 UTC
helix git commit: helix manager should support getting metadata store
connection string
Repository: helix
Updated Branches:
refs/heads/master cbd3bd991 -> 921d1fc98
helix manager should support getting metadata store connection string
Project: http://git-wip-us.apache.org/repos/asf/helix/repo
Commit: http://git-wip-us.apache.org/repos/asf/helix/commit/921d1fc9
Tree: http://git-wip-us.apache.org/repos/asf/helix/tree/921d1fc9
Diff: http://git-wip-us.apache.org/repos/asf/helix/diff/921d1fc9
Branch: refs/heads/master
Commit: 921d1fc9822a2ae3ddd2adc854a12ec486ad6c08
Parents: cbd3bd9
Author: Harry Zhang <hr...@linkedin.com>
Authored: Mon Jul 16 15:23:30 2018 -0700
Committer: Harry Zhang <hr...@linkedin.com>
Committed: Mon Jul 16 15:23:30 2018 -0700
----------------------------------------------------------------------
.../src/main/java/org/apache/helix/HelixManager.java | 7 +++++++
.../java/org/apache/helix/manager/zk/ZKHelixManager.java | 10 ++++++++++
.../helix/controller/stages/DummyClusterManager.java | 5 +++++
.../java/org/apache/helix/manager/zk/TestZkReconnect.java | 3 +++
.../src/test/java/org/apache/helix/mock/MockManager.java | 5 +++++
.../org/apache/helix/participant/MockZKHelixManager.java | 5 +++++
6 files changed, 35 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/helix/blob/921d1fc9/helix-core/src/main/java/org/apache/helix/HelixManager.java
----------------------------------------------------------------------
diff --git a/helix-core/src/main/java/org/apache/helix/HelixManager.java b/helix-core/src/main/java/org/apache/helix/HelixManager.java
index ff61a04..66f83ae 100644
--- a/helix-core/src/main/java/org/apache/helix/HelixManager.java
+++ b/helix-core/src/main/java/org/apache/helix/HelixManager.java
@@ -289,6 +289,13 @@ public interface HelixManager {
String getClusterName();
/**
+ * Returns a string that can be used to connect to metadata store for this HelixManager instance
+ * i.e. for ZkHelixManager, this will have format "{zookeeper-address}:{port}"
+ * @return a string used to connect to metadata store
+ */
+ String getMetadataStoreConnectionString();
+
+ /**
* Returns the instanceName used to connect to the cluster
* @return the associated instance name
*/
http://git-wip-us.apache.org/repos/asf/helix/blob/921d1fc9/helix-core/src/main/java/org/apache/helix/manager/zk/ZKHelixManager.java
----------------------------------------------------------------------
diff --git a/helix-core/src/main/java/org/apache/helix/manager/zk/ZKHelixManager.java b/helix-core/src/main/java/org/apache/helix/manager/zk/ZKHelixManager.java
index ad51997..46deb44 100644
--- a/helix-core/src/main/java/org/apache/helix/manager/zk/ZKHelixManager.java
+++ b/helix-core/src/main/java/org/apache/helix/manager/zk/ZKHelixManager.java
@@ -560,6 +560,16 @@ public class ZKHelixManager implements HelixManager, IZkStateListener {
return _clusterName;
}
+ /**
+ * Returns a string that can be used to connect to metadata store for this HelixManager instance
+ * i.e. for ZkHelixManager, this will have format "{zookeeper-address}:{port}"
+ * @return a string used to connect to metadata store
+ */
+ @Override
+ public String getMetadataStoreConnectionString() {
+ return _zkAddress;
+ }
+
@Override
public String getInstanceName() {
return _instanceName;
http://git-wip-us.apache.org/repos/asf/helix/blob/921d1fc9/helix-core/src/test/java/org/apache/helix/controller/stages/DummyClusterManager.java
----------------------------------------------------------------------
diff --git a/helix-core/src/test/java/org/apache/helix/controller/stages/DummyClusterManager.java b/helix-core/src/test/java/org/apache/helix/controller/stages/DummyClusterManager.java
index 631f714..dad3c76 100644
--- a/helix-core/src/test/java/org/apache/helix/controller/stages/DummyClusterManager.java
+++ b/helix-core/src/test/java/org/apache/helix/controller/stages/DummyClusterManager.java
@@ -155,6 +155,11 @@ public class DummyClusterManager implements HelixManager {
}
@Override
+ public String getMetadataStoreConnectionString() {
+ return null;
+ }
+
+ @Override
public String getInstanceName() {
// TODO Auto-generated method stub
return null;
http://git-wip-us.apache.org/repos/asf/helix/blob/921d1fc9/helix-core/src/test/java/org/apache/helix/manager/zk/TestZkReconnect.java
----------------------------------------------------------------------
diff --git a/helix-core/src/test/java/org/apache/helix/manager/zk/TestZkReconnect.java b/helix-core/src/test/java/org/apache/helix/manager/zk/TestZkReconnect.java
index 62701a1..303cf68 100644
--- a/helix-core/src/test/java/org/apache/helix/manager/zk/TestZkReconnect.java
+++ b/helix-core/src/test/java/org/apache/helix/manager/zk/TestZkReconnect.java
@@ -84,6 +84,8 @@ public class TestZkReconnect {
}
});
+ Assert.assertEquals(controller.getMetadataStoreConnectionString(), zkAddr);
+
try {
controller.connect();
// check onConnected() is triggered
@@ -112,6 +114,7 @@ public class TestZkReconnect {
// Inject expire to test handler
// onDisconnectedFlag should be set within onDisconnected handler
controller.handleSessionEstablishmentError(new Exception("For testing"));
+ Thread.sleep(10);
Assert.assertTrue(onDisconnectedFlag.get());
Assert.assertFalse(onConnectedFlag.get());
Assert.assertFalse(controller.isConnected());
http://git-wip-us.apache.org/repos/asf/helix/blob/921d1fc9/helix-core/src/test/java/org/apache/helix/mock/MockManager.java
----------------------------------------------------------------------
diff --git a/helix-core/src/test/java/org/apache/helix/mock/MockManager.java b/helix-core/src/test/java/org/apache/helix/mock/MockManager.java
index f5a8486..2e67128 100644
--- a/helix-core/src/test/java/org/apache/helix/mock/MockManager.java
+++ b/helix-core/src/test/java/org/apache/helix/mock/MockManager.java
@@ -164,6 +164,11 @@ public class MockManager implements HelixManager {
}
@Override
+ public String getMetadataStoreConnectionString() {
+ return null;
+ }
+
+ @Override
public String getInstanceName() {
return _instanceName;
}
http://git-wip-us.apache.org/repos/asf/helix/blob/921d1fc9/helix-core/src/test/java/org/apache/helix/participant/MockZKHelixManager.java
----------------------------------------------------------------------
diff --git a/helix-core/src/test/java/org/apache/helix/participant/MockZKHelixManager.java b/helix-core/src/test/java/org/apache/helix/participant/MockZKHelixManager.java
index 33cf1f0..4dc3957 100644
--- a/helix-core/src/test/java/org/apache/helix/participant/MockZKHelixManager.java
+++ b/helix-core/src/test/java/org/apache/helix/participant/MockZKHelixManager.java
@@ -181,6 +181,11 @@ public class MockZKHelixManager implements HelixManager {
}
@Override
+ public String getMetadataStoreConnectionString() {
+ return null;
+ }
+
+ @Override
public String getInstanceName() {
return _instanceName;
}