You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by hx...@apache.org on 2021/05/05 16:41:10 UTC
[iotdb] 01/02: add clusterinfo test
This is an automated email from the ASF dual-hosted git repository.
hxd pushed a commit to branch test_container
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 5568154f9c451f1f16935cccd818b34e24a4f716
Author: xiangdong huang <sa...@gmail.com>
AuthorDate: Thu May 6 00:34:36 2021 +0800
add clusterinfo test
---
.../java/org/apache/iotdb/cluster/ClusterMain.java | 12 +++-
.../iotdb/cluster/server/MetaClusterServer.java | 11 +++
...sterInfoService.java => ClusterInfoServer.java} | 10 +--
.../server/clusterInfo/ClusterInfoServerMBean.java | 3 +
.../server/clusterInfo/ClusterInfoServiceImpl.java | 2 +-
.../server/clusterinfo/ClusterInfoServerTest.java | 82 ++++++++++++++++++++++
.../clusterinfo/ClusterInfoServiceImplTest.java | 75 +++++++++++++++++---
.../server/clusterinfo/ClusterInfoServiceTest.java | 44 ------------
.../cluster/server/member/MetaGroupMemberTest.java | 5 +-
.../iotdb/db/sql/{ClusterIT.java => Cases.java} | 61 +---------------
.../java/org/apache/iotdb/db/sql/ClusterIT.java | 4 ++
.../iotdb/db/sql/nodes3/ThreeNodeCluster2IT.java | 4 ++
.../iotdb/db/sql/nodes5/FiveNodeCluster2IT.java | 4 ++
.../iotdb/db/sql/nodes5/FiveNodeCluster4IT.java | 4 ++
14 files changed, 200 insertions(+), 121 deletions(-)
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/ClusterMain.java b/cluster/src/main/java/org/apache/iotdb/cluster/ClusterMain.java
index eb91d0c..3518a8b 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/ClusterMain.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/ClusterMain.java
@@ -29,7 +29,7 @@ import org.apache.iotdb.cluster.partition.slot.SlotStrategy;
import org.apache.iotdb.cluster.rpc.thrift.Node;
import org.apache.iotdb.cluster.server.MetaClusterServer;
import org.apache.iotdb.cluster.server.Response;
-import org.apache.iotdb.cluster.server.clusterInfo.ClusterInfoService;
+import org.apache.iotdb.cluster.server.clusterInfo.ClusterInfoServer;
import org.apache.iotdb.cluster.utils.ClusterUtils;
import org.apache.iotdb.db.conf.IoTDBConfigCheck;
import org.apache.iotdb.db.conf.IoTDBConstant;
@@ -37,6 +37,7 @@ import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.exception.StartupException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.utils.TestOnly;
import org.apache.thrift.TException;
import org.apache.thrift.async.TAsyncClientManager;
import org.apache.thrift.protocol.TBinaryProtocol.Factory;
@@ -109,7 +110,7 @@ public class ClusterMain {
metaServer.buildCluster();
// Currently, we do not reigher ClusterInfoService as a JMX Bean,
// so we use startService() rather than start()
- ClusterInfoService.getInstance().startService();
+ ClusterInfoServer.getInstance().startService();
} catch (TTransportException
| StartupException
| QueryProcessException
@@ -126,7 +127,7 @@ public class ClusterMain {
metaServer.joinCluster();
// Currently, we do not reigher ClusterInfoService as a JMX Bean,
// so we use startService() rather than start()
- ClusterInfoService.getInstance().startService();
+ ClusterInfoServer.getInstance().startService();
} catch (TTransportException
| StartupException
| QueryProcessException
@@ -307,4 +308,9 @@ public class ClusterMain {
}
});
}
+
+ @TestOnly
+ public static void setMetaClusterServer(MetaClusterServer metaClusterServer) {
+ metaServer = metaClusterServer;
+ }
}
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/MetaClusterServer.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/MetaClusterServer.java
index 24331d7..61463a1 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/server/MetaClusterServer.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/MetaClusterServer.java
@@ -36,6 +36,7 @@ import org.apache.iotdb.db.exception.StartupException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.service.IoTDB;
import org.apache.iotdb.db.service.RegisterManager;
+import org.apache.iotdb.db.utils.TestOnly;
import org.apache.iotdb.service.rpc.thrift.TSStatus;
import org.apache.thrift.TException;
@@ -356,4 +357,14 @@ public class MetaClusterServer extends RaftServer
public void handshake(Node sender, AsyncMethodCallback<Void> resultHandler) {
asyncService.handshake(sender, resultHandler);
}
+
+ @TestOnly
+ public void setMetaGroupMember(MetaGroupMember metaGroupMember) {
+ this.member = metaGroupMember;
+ }
+
+ @TestOnly
+ public IoTDB getIoTDB() {
+ return ioTDB;
+ }
}
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterInfo/ClusterInfoService.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterInfo/ClusterInfoServer.java
similarity index 91%
rename from cluster/src/main/java/org/apache/iotdb/cluster/server/clusterInfo/ClusterInfoService.java
rename to cluster/src/main/java/org/apache/iotdb/cluster/server/clusterInfo/ClusterInfoServer.java
index 1e84255..53dcb5e 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterInfo/ClusterInfoService.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterInfo/ClusterInfoServer.java
@@ -30,10 +30,10 @@ import org.apache.iotdb.db.service.ServiceType;
import org.apache.iotdb.db.service.thrift.ThriftService;
import org.apache.iotdb.db.service.thrift.ThriftServiceThread;
-public class ClusterInfoService extends ThriftService {
+public class ClusterInfoServer extends ThriftService implements ClusterInfoServerMBean {
private ClusterInfoServiceImpl serviceImpl;
- public static ClusterInfoService getInstance() {
+ public static ClusterInfoServer getInstance() {
return ClusterMonitorServiceHolder.INSTANCE;
}
@@ -64,7 +64,7 @@ public class ClusterInfoService extends ThriftService {
getID().getName(),
ThreadName.CLUSTER_INFO_SERVICE.getName(),
nodeConfig.getRpcAddress(),
- clusterConfig.getClusterRpcPort(),
+ clusterConfig.getClusterInfoRpcPort(),
nodeConfig.getRpcMaxConcurrentClientNum(),
nodeConfig.getThriftServerAwaitTimeForStopService(),
new ClusterInfoServiceThriftHandler(serviceImpl),
@@ -82,12 +82,12 @@ public class ClusterInfoService extends ThriftService {
@Override
public int getBindPort() {
- return ClusterDescriptor.getInstance().getConfig().getClusterRpcPort();
+ return ClusterDescriptor.getInstance().getConfig().getClusterInfoRpcPort();
}
private static class ClusterMonitorServiceHolder {
- private static final ClusterInfoService INSTANCE = new ClusterInfoService();
+ private static final ClusterInfoServer INSTANCE = new ClusterInfoServer();
private ClusterMonitorServiceHolder() {}
}
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterInfo/ClusterInfoServerMBean.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterInfo/ClusterInfoServerMBean.java
new file mode 100644
index 0000000..aa3c00f
--- /dev/null
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterInfo/ClusterInfoServerMBean.java
@@ -0,0 +1,3 @@
+package org.apache.iotdb.cluster.server.clusterInfo;
+
+public interface ClusterInfoServerMBean {}
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterInfo/ClusterInfoServiceImpl.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterInfo/ClusterInfoServiceImpl.java
index 85974c8..b3e4908 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterInfo/ClusterInfoServiceImpl.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterInfo/ClusterInfoServiceImpl.java
@@ -45,7 +45,7 @@ public class ClusterInfoServiceImpl implements ClusterInfoService.Iface {
List<DataPartitionEntry> result = new ArrayList<>(partitions.size());
partitions.forEach(
(multikey, nodes) ->
- result.add(new DataPartitionEntry(multikey.getKey(1), multikey.getKey(2), nodes)));
+ result.add(new DataPartitionEntry(multikey.getKey(0), multikey.getKey(1), nodes)));
return result;
}
diff --git a/cluster/src/test/java/org/apache/iotdb/cluster/server/clusterinfo/ClusterInfoServerTest.java b/cluster/src/test/java/org/apache/iotdb/cluster/server/clusterinfo/ClusterInfoServerTest.java
new file mode 100644
index 0000000..c0574ea
--- /dev/null
+++ b/cluster/src/test/java/org/apache/iotdb/cluster/server/clusterinfo/ClusterInfoServerTest.java
@@ -0,0 +1,82 @@
+/*
+ * 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.iotdb.cluster.server.clusterinfo;
+
+import org.apache.iotdb.cluster.config.ClusterDescriptor;
+import org.apache.iotdb.cluster.rpc.thrift.ClusterInfoService;
+import org.apache.iotdb.cluster.server.clusterInfo.ClusterInfoServer;
+import org.apache.iotdb.db.conf.IoTDBDescriptor;
+import org.apache.iotdb.db.exception.metadata.MetadataException;
+import org.apache.iotdb.rpc.IoTDBConnectionException;
+import org.apache.iotdb.rpc.RpcTransportFactory;
+import org.apache.iotdb.service.rpc.thrift.TSIService;
+import org.apache.thrift.protocol.TBinaryProtocol;
+import org.apache.thrift.protocol.TCompactProtocol;
+import org.apache.thrift.transport.TSocket;
+import org.apache.thrift.transport.TTransport;
+import org.apache.thrift.transport.TTransportException;
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+
+public class ClusterInfoServerTest {
+ ClusterInfoServiceImplTest test;
+ ClusterInfoServer service;
+
+ @Before
+ public void setUp() throws Exception {
+ test = new ClusterInfoServiceImplTest();
+ test.setUp();
+ service = new ClusterInfoServer();
+ service.start();
+ }
+
+ @After
+ public void tearDown() throws MetadataException {
+ test.tearDown();
+ service.stop();
+ }
+
+ @Test
+ public void getID() {
+ System.out.println(service.getID());
+ }
+
+ @Test
+ public void testConnect() {
+ TTransport transport =
+ RpcTransportFactory.INSTANCE.getTransport(
+ new TSocket(
+ IoTDBDescriptor.getInstance().getConfig().getRpcAddress(),
+ ClusterDescriptor.getInstance().getConfig().getClusterRpcPort()));
+
+ try {
+ transport.open();
+ } catch (TTransportException e) {
+ Assert.fail(e.getMessage());
+ }
+ // connection success means OK.
+ ClusterInfoService.Client client =
+ new ClusterInfoService.Client(new TBinaryProtocol(transport));
+ Assert.assertNotNull(client);
+ // client's methods have been tested on ClusterInfoServiceImplTest
+ transport.close();
+ }
+}
diff --git a/cluster/src/test/java/org/apache/iotdb/cluster/server/clusterinfo/ClusterInfoServiceImplTest.java b/cluster/src/test/java/org/apache/iotdb/cluster/server/clusterinfo/ClusterInfoServiceImplTest.java
index f8170ba..63eacc3 100644
--- a/cluster/src/test/java/org/apache/iotdb/cluster/server/clusterinfo/ClusterInfoServiceImplTest.java
+++ b/cluster/src/test/java/org/apache/iotdb/cluster/server/clusterinfo/ClusterInfoServiceImplTest.java
@@ -19,33 +19,90 @@
package org.apache.iotdb.cluster.server.clusterinfo;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import org.apache.iotdb.cluster.ClusterMain;
+import org.apache.iotdb.cluster.partition.PartitionTable;
+import org.apache.iotdb.cluster.rpc.thrift.DataPartitionEntry;
+import org.apache.iotdb.cluster.rpc.thrift.Node;
+import org.apache.iotdb.cluster.server.MetaClusterServer;
import org.apache.iotdb.cluster.server.clusterInfo.ClusterInfoServiceImpl;
import org.apache.iotdb.cluster.server.member.MetaGroupMember;
+import org.apache.iotdb.cluster.server.member.MetaGroupMemberTest;
+import org.apache.iotdb.db.engine.StorageEngine;
+import org.apache.iotdb.db.exception.metadata.IllegalPathException;
+import org.apache.iotdb.db.exception.metadata.MetadataException;
+import org.apache.iotdb.db.metadata.PartialPath;
+import org.apache.thrift.TException;
+import org.junit.After;
+import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
+import org.powermock.reflect.Whitebox;
public class ClusterInfoServiceImplTest {
+ ClusterInfoServiceImpl impl;
+
@Before
- public void setUp() {
- ClusterInfoServiceImpl impl = new ClusterInfoServiceImpl();
- MetaGroupMember metaGroupMember = new MetaGroupMember();
- metaGroupMember.buildCluster();
+ public void setUp() throws Exception {
+ MetaGroupMemberTest metaGroupMemberTest = new MetaGroupMemberTest();
+ // will create a cluster with 10 nodes, ip: 0,10,20,...100
+ metaGroupMemberTest.setUp();
+ MetaGroupMember metaGroupMember = metaGroupMemberTest.getTestMetaGroupMember();
+
+ MetaClusterServer metaClusterServer = new MetaClusterServer();
+ metaClusterServer.getMember().stop();
+ metaClusterServer.setMetaGroupMember(metaGroupMember);
+
+ ClusterMain.setMetaClusterServer(metaClusterServer);
+
+ metaClusterServer.getIoTDB().metaManager.setStorageGroup(new PartialPath("root", "sg"));
+ // metaClusterServer.getMember()
+ impl = new ClusterInfoServiceImpl();
+ }
+
+ @After
+ public void tearDown() throws MetadataException {
+ ClusterMain.getMetaServer()
+ .getIoTDB()
+ .metaManager
+ .deleteStorageGroups(Collections.singletonList(new PartialPath("root", "sg")));
+ ClusterMain.getMetaServer().stop();
}
@Test
- public void getRing() {}
+ public void getRing() throws TException {
+ List<Node> nodes = impl.getRing();
+ Assert.assertEquals(10, nodes.size());
+ }
@Test
- public void getDataPartition() {}
+ public void getDataPartition() {
+ List<DataPartitionEntry> entries = impl.getDataPartition("root.sg", 0, 100);
+ Assert.assertEquals(1, entries.size());
+ List<Node> nodes = entries.get(0).getNodes();
+ Assert.assertEquals(50, nodes.get(0).getNodeIdentifier());
+ Assert.assertEquals(60, nodes.get(1).getNodeIdentifier());
+ }
@Test
- public void getMetaPartition() {}
+ public void getMetaPartition() throws TException {
+ List<Node> nodes = impl.getMetaPartition("root.sg");
+ Assert.assertEquals(50, nodes.get(0).getNodeIdentifier());
+ Assert.assertEquals(60, nodes.get(1).getNodeIdentifier());
+ }
@Test
- public void getAllNodeStatus() {}
+ public void getAllNodeStatus() throws TException {
+ // TODO need to use mode to test getAllNodeStatus
+ }
@Test
- public void getInstrumentingInfo() {}
+ public void getInstrumentingInfo() throws TException {
+ // hard to test the content of the instrumentInfo.
+ Assert.assertNotNull(impl.getInstrumentingInfo());
+ }
}
diff --git a/cluster/src/test/java/org/apache/iotdb/cluster/server/clusterinfo/ClusterInfoServiceTest.java b/cluster/src/test/java/org/apache/iotdb/cluster/server/clusterinfo/ClusterInfoServiceTest.java
deleted file mode 100644
index b51c2e0..0000000
--- a/cluster/src/test/java/org/apache/iotdb/cluster/server/clusterinfo/ClusterInfoServiceTest.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * 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.iotdb.cluster.server.clusterinfo;
-
-import org.junit.Test;
-
-import static org.junit.Assert.*;
-
-public class ClusterInfoServiceTest {
-
- @Test
- public void getID() {}
-
- @Test
- public void getImplementation() {}
-
- @Test
- public void initTProcessor() {}
-
- @Test
- public void initThriftServiceThread() {}
-
- @Test
- public void getBindIP() {}
-
- @Test
- public void getBindPort() {}
-}
diff --git a/cluster/src/test/java/org/apache/iotdb/cluster/server/member/MetaGroupMemberTest.java b/cluster/src/test/java/org/apache/iotdb/cluster/server/member/MetaGroupMemberTest.java
index 90cfeab..87cc093 100644
--- a/cluster/src/test/java/org/apache/iotdb/cluster/server/member/MetaGroupMemberTest.java
+++ b/cluster/src/test/java/org/apache/iotdb/cluster/server/member/MetaGroupMemberTest.java
@@ -187,7 +187,6 @@ public class MetaGroupMemberTest extends BaseMember {
mockDataClusterServer = false;
NodeStatusManager.getINSTANCE().setMetaGroupMember(testMetaMember);
exiledNode = null;
- System.out.println("Init term of metaGroupMember: " + testMetaMember.getTerm().get());
}
private DataGroupMember getDataGroupMember(PartitionGroup group, Node node) {
@@ -1370,4 +1369,8 @@ public class MetaGroupMemberTest extends BaseMember {
});
while (resultRef.get() == null) {}
}
+
+ public MetaGroupMember getTestMetaGroupMember() {
+ return testMetaMember;
+ }
}
diff --git a/testcontainer/src/test/java/org/apache/iotdb/db/sql/ClusterIT.java b/testcontainer/src/test/java/org/apache/iotdb/db/sql/Cases.java
similarity index 61%
copy from testcontainer/src/test/java/org/apache/iotdb/db/sql/ClusterIT.java
copy to testcontainer/src/test/java/org/apache/iotdb/db/sql/Cases.java
index ce6a681..4cae584 100644
--- a/testcontainer/src/test/java/org/apache/iotdb/db/sql/ClusterIT.java
+++ b/testcontainer/src/test/java/org/apache/iotdb/db/sql/Cases.java
@@ -16,79 +16,24 @@
* specific language governing permissions and limitations
* under the License.
*/
-
package org.apache.iotdb.db.sql;
-import org.apache.iotdb.jdbc.Config;
-
-import org.junit.After;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.testcontainers.containers.DockerComposeContainer;
-
import java.sql.Connection;
-import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.HashSet;
import java.util.Set;
+import org.junit.Assert;
+import org.junit.Test;
-public abstract class ClusterIT {
-
- private static Logger logger = LoggerFactory.getLogger(ClusterIT.class);
+public abstract class Cases {
private Statement writeStatement;
private Connection writeConnection;
private Statement readStatement;
private Connection readConnection;
- protected int getWriteRpcPort() {
- return getContainer().getServicePort("iotdb-server_1", 6667);
- }
-
- protected String getWriteRpcIp() {
- return getContainer().getServiceHost("iotdb-server_1", 6667);
- }
-
- protected int getReadRpcPort() {
- return getContainer().getServicePort("iotdb-server_1", 6667);
- }
-
- protected String getReadRpcIp() {
- return getContainer().getServiceHost("iotdb-server_1", 6667);
- }
-
- protected void startCluster() {}
-
- protected abstract DockerComposeContainer getContainer();
-
- @Before
- public void setUp() throws Exception {
- startCluster();
-
- Class.forName(Config.JDBC_DRIVER_NAME);
- writeConnection =
- DriverManager.getConnection(
- "jdbc:iotdb://" + getWriteRpcIp() + ":" + getWriteRpcPort(), "root", "root");
- writeStatement = writeConnection.createStatement();
- readConnection =
- DriverManager.getConnection(
- "jdbc:iotdb://" + getReadRpcIp() + ":" + getReadRpcPort(), "root", "root");
- readStatement = readConnection.createStatement();
- }
-
- @After
- public void tearDown() throws Exception {
- writeStatement.close();
- writeConnection.close();
- readStatement.close();
- readConnection.close();
- }
-
@Test
public void testSimplePutAndGet() throws SQLException {
diff --git a/testcontainer/src/test/java/org/apache/iotdb/db/sql/ClusterIT.java b/testcontainer/src/test/java/org/apache/iotdb/db/sql/ClusterIT.java
index ce6a681..6dc6c76 100644
--- a/testcontainer/src/test/java/org/apache/iotdb/db/sql/ClusterIT.java
+++ b/testcontainer/src/test/java/org/apache/iotdb/db/sql/ClusterIT.java
@@ -46,6 +46,10 @@ public abstract class ClusterIT {
private Statement readStatement;
private Connection readConnection;
+ // "root.sg1" is a special storage for testing whether the read and write operations can be run
+ // correctly if the data is not on the connected node.
+ public String defaultSG = "root.sg1";
+
protected int getWriteRpcPort() {
return getContainer().getServicePort("iotdb-server_1", 6667);
}
diff --git a/testcontainer/src/test/java/org/apache/iotdb/db/sql/nodes3/ThreeNodeCluster2IT.java b/testcontainer/src/test/java/org/apache/iotdb/db/sql/nodes3/ThreeNodeCluster2IT.java
index 1a5134a..80ea301 100644
--- a/testcontainer/src/test/java/org/apache/iotdb/db/sql/nodes3/ThreeNodeCluster2IT.java
+++ b/testcontainer/src/test/java/org/apache/iotdb/db/sql/nodes3/ThreeNodeCluster2IT.java
@@ -6,4 +6,8 @@ public class ThreeNodeCluster2IT extends AbstractThreeNodeClusterIT {
protected String getWriteRpcIp() {
return getContainer().getServiceHost("iotdb-server_2", 6667);
}
+
+ protected int getWriteRpcPort() {
+ return getContainer().getServicePort("iotdb-server_2", 6667);
+ }
}
diff --git a/testcontainer/src/test/java/org/apache/iotdb/db/sql/nodes5/FiveNodeCluster2IT.java b/testcontainer/src/test/java/org/apache/iotdb/db/sql/nodes5/FiveNodeCluster2IT.java
index d3a0e70..555241a 100644
--- a/testcontainer/src/test/java/org/apache/iotdb/db/sql/nodes5/FiveNodeCluster2IT.java
+++ b/testcontainer/src/test/java/org/apache/iotdb/db/sql/nodes5/FiveNodeCluster2IT.java
@@ -6,4 +6,8 @@ public class FiveNodeCluster2IT extends AbstractFiveNodeClusterIT {
protected String getWriteRpcIp() {
return getContainer().getServiceHost("iotdb-server_2", 6667);
}
+
+ protected int getWriteRpcPort() {
+ return getContainer().getServicePort("iotdb-server_2", 6667);
+ }
}
diff --git a/testcontainer/src/test/java/org/apache/iotdb/db/sql/nodes5/FiveNodeCluster4IT.java b/testcontainer/src/test/java/org/apache/iotdb/db/sql/nodes5/FiveNodeCluster4IT.java
index d3cfd82..945a198 100644
--- a/testcontainer/src/test/java/org/apache/iotdb/db/sql/nodes5/FiveNodeCluster4IT.java
+++ b/testcontainer/src/test/java/org/apache/iotdb/db/sql/nodes5/FiveNodeCluster4IT.java
@@ -6,4 +6,8 @@ public class FiveNodeCluster4IT extends AbstractFiveNodeClusterIT {
protected String getWriteRpcIp() {
return getContainer().getServiceHost("iotdb-server_4", 6667);
}
+
+ protected int getWriteRpcPort() {
+ return getContainer().getServicePort("iotdb-server_4", 6667);
+ }
}