diff --git a/dolphinscheduler-api/pom.xml b/dolphinscheduler-api/pom.xml
index 41971734ec..b7c3f3da69 100644
--- a/dolphinscheduler-api/pom.xml
+++ b/dolphinscheduler-api/pom.xml
@@ -140,6 +140,12 @@
org.apache.curator
curator-recipes
+
+
+ org.apache.zookeeper
+ zookeeper
+
+
diff --git a/dolphinscheduler-server/pom.xml b/dolphinscheduler-server/pom.xml
index 080b87ebaa..86490197b6 100644
--- a/dolphinscheduler-server/pom.xml
+++ b/dolphinscheduler-server/pom.xml
@@ -86,6 +86,12 @@
org.apache.curator
curator-recipes
+
+
+ org.apache.zookeeper
+ zookeeper
+
+
org.apache.zookeeper
diff --git a/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/zk/DefaultEnsembleProvider.java b/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/zk/DefaultEnsembleProvider.java
index 9eedf7a4ca..dbe8bd6395 100644
--- a/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/zk/DefaultEnsembleProvider.java
+++ b/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/zk/DefaultEnsembleProvider.java
@@ -45,4 +45,14 @@ public class DefaultEnsembleProvider implements EnsembleProvider {
public void close() throws IOException {
//NOP
}
+
+ @Override
+ public void setConnectionString(String connectionString) {
+ //NOP
+ }
+
+ @Override
+ public boolean updateServerListEnabled() {
+ return false;
+ }
}
diff --git a/dolphinscheduler-service/src/test/java/org/apache/dolphinscheduler/service/zk/DefaultEnsembleProviderTest.java b/dolphinscheduler-service/src/test/java/org/apache/dolphinscheduler/service/zk/DefaultEnsembleProviderTest.java
new file mode 100644
index 0000000000..cdec9d0547
--- /dev/null
+++ b/dolphinscheduler-service/src/test/java/org/apache/dolphinscheduler/service/zk/DefaultEnsembleProviderTest.java
@@ -0,0 +1,65 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.dolphinscheduler.service.zk;
+
+import org.apache.curator.ensemble.EnsembleProvider;
+import org.junit.AfterClass;
+import org.junit.Assert;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import java.io.IOException;
+
+import static org.junit.Assert.*;
+
+public class DefaultEnsembleProviderTest {
+ private static final String DEFAULT_SERVER_LIST = "localhost:2181";
+
+ @Test
+ public void startAndClose() {
+ EnsembleProvider ensembleProvider = new DefaultEnsembleProvider(DEFAULT_SERVER_LIST);
+ try {
+ ensembleProvider.start();
+ } catch (Exception e) {
+ Assert.fail("EnsembleProvider start error: " + e.getMessage());
+ }
+ try {
+ ensembleProvider.close();
+ } catch (IOException e) {
+ Assert.fail("EnsembleProvider close error: " + e.getMessage());
+ }
+ }
+
+ @Test
+ public void getConnectionString() {
+ EnsembleProvider ensembleProvider = new DefaultEnsembleProvider(DEFAULT_SERVER_LIST);
+ Assert.assertEquals(DEFAULT_SERVER_LIST, ensembleProvider.getConnectionString());
+ }
+
+ @Test
+ public void setConnectionString() {
+ EnsembleProvider ensembleProvider = new DefaultEnsembleProvider(DEFAULT_SERVER_LIST);
+ ensembleProvider.setConnectionString("otherHost:2181");
+ Assert.assertEquals(DEFAULT_SERVER_LIST, ensembleProvider.getConnectionString());
+ }
+
+ @Test
+ public void updateServerListEnabled() {
+ EnsembleProvider ensembleProvider = new DefaultEnsembleProvider(DEFAULT_SERVER_LIST);
+ Assert.assertFalse(ensembleProvider.updateServerListEnabled());
+ }
+}
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 57063a86c2..dee1dce8b2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -59,7 +59,7 @@
UTF-8
UTF-8
- 2.12.0
+ 4.3.0
5.1.5.RELEASE
2.1.3.RELEASE
1.8
@@ -244,6 +244,12 @@
org.apache.curator
curator-recipes
${curator.version}
+
+
+ org.apache.zookeeper
+ zookeeper
+
+
org.apache.zookeeper
@@ -728,6 +734,7 @@
**/server/worker/task/datax/DataxTaskTest.java
**/server/worker/task/sqoop/SqoopTaskTest.java
**/server/utils/DataxUtilsTest.java
+ **/service/zk/DefaultEnsembleProviderTest.java