This is an automated email from the ASF dual-hosted git repository.

hxd pushed a commit to branch change_rpc_port
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/change_rpc_port by this push:
     new a21f05e  add name predix for some threads in cluster module; add rpc 
ip for Nodes
a21f05e is described below

commit a21f05e920cd048a307dba7fc19c02574d1447d5
Author: xiangdong huang <[email protected]>
AuthorDate: Wed Dec 16 23:26:05 2020 +0800

    add name predix for some threads in cluster module; add rpc ip for Nodes
---
 .../java/org/apache/iotdb/cluster/ClusterMain.java | 47 ++++++++++++++--------
 .../iotdb/cluster/client/DataClientProvider.java   |  2 +-
 .../cluster/client/async/AsyncClientPool.java      |  8 ++--
 .../iotdb/cluster/client/sync/SyncClientPool.java  |  2 +-
 .../cluster/server/member/DataGroupMember.java     |  6 +--
 .../cluster/server/member/MetaGroupMember.java     |  4 +-
 .../apache/iotdb/cluster/utils/ClusterNode.java    |  5 ++-
 .../apache/iotdb/cluster/utils/ClusterUtils.java   |  6 +--
 .../cluster/client/async/AsyncClientPoolTest.java  | 12 +++---
 .../cluster/client/async/AsyncDataClientTest.java  |  2 +-
 .../cluster/client/async/AsyncMetaClientTest.java  |  2 +-
 .../cluster/common/TestPartitionedLogManager.java  | 10 +++--
 .../apache/iotdb/cluster/log/HardStateTest.java    |  3 +-
 .../cluster/log/applier/MetaLogApplierTest.java    |  6 ++-
 .../cluster/log/logtypes/SerializeLogTest.java     |  4 +-
 .../cluster/partition/SlotPartitionTableTest.java  | 15 +++----
 .../handlers/caller/HeartbeatHandlerTest.java      |  3 +-
 .../cluster/server/member/DataGroupMemberTest.java |  6 ++-
 .../cluster/server/member/MetaGroupMemberTest.java |  3 +-
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |  2 +-
 20 files changed, 86 insertions(+), 62 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 3c54165..15b3bd7 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/ClusterMain.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/ClusterMain.java
@@ -44,7 +44,6 @@ import org.apache.iotdb.cluster.utils.ClusterUtils;
 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.service.RPCService;
 import org.apache.thrift.TException;
 import org.apache.thrift.async.TAsyncClientManager;
 import org.apache.thrift.protocol.TBinaryProtocol.Factory;
@@ -71,28 +70,31 @@ public class ClusterMain {
   private static final String OPTION_CLUSTER_RPC_PORT = "rpc_port";
   private static final String OPTION_SEED_NODES = "seed_nodes";
   private static final String OPTION_DEBUG_RPC_PORT = "debug_rpc_port";
+  private static final String OPTION_CLUSTER_RPC_IP = "rpc_address";
 
   private static MetaClusterServer metaServer;
 
   public static void main(String[] args) {
     if (args.length < 1) {
       logger.error("Usage: <-s|-a|-r> [-{} <internal meta port>] "
-          + "[-{} <internal data port>] "
-          + "[-{} <cluster rpc port>] "
-          + "[-{} <node1:meta_port:data_port:cluster_rpc_port,"
-          +               "node2:meta_port:data_port:cluster_rpc_port,"
-          +           "...,noden:meta_port:data_port:cluster_rpc_port,>] "
-          + "[-{} <rpc port>]\n"
-          + "-s: start the node as a seed\n"
-          + "-a: start the node as a new node\n"
-          + "-r: remove the node out of the cluster\n"
-          + "",
-          OPTION_INTERVAL_META_PORT,
-          OPTION_INTERVAL_DATA_PORT,
-          OPTION_CLUSTER_RPC_PORT,
-          OPTION_SEED_NODES,
-          OPTION_DEBUG_RPC_PORT
-          );
+        + "[-{} <internal data port>] "
+        + "[-{} <cluster rpc port>] "
+        + "[-{} <cluster RPC address>]\n"
+        + "[-{} <node1:meta_port:data_port:cluster_rpc_port,"
+        + "node2:meta_port:data_port:cluster_rpc_port,"
+        + "...,noden:meta_port:data_port:cluster_rpc_port,>] "
+        + "[-{} <debug rpc port>]"
+        + "-s: start the node as a seed\n"
+        + "-a: start the node as a new node\n"
+        + "-r: remove the node out of the cluster\n"
+        + "",
+        OPTION_INTERVAL_META_PORT,
+        OPTION_INTERVAL_DATA_PORT,
+        OPTION_CLUSTER_RPC_PORT,
+        OPTION_CLUSTER_RPC_IP,
+        OPTION_SEED_NODES,
+        OPTION_DEBUG_RPC_PORT
+      );
       return;
     }
     String mode = args[0];
@@ -231,6 +233,11 @@ public class ClusterMain {
     clusterRpcPort.setRequired(false);
     options.addOption(clusterRpcPort);
 
+    Option clusterRpcIP = new Option(OPTION_CLUSTER_RPC_IP, 
OPTION_CLUSTER_RPC_IP, true,
+        "IP for client service");
+    clusterRpcIP.setRequired(false);
+    options.addOption(clusterRpcIP);
+
     Option seedNodes = new Option(OPTION_SEED_NODES, OPTION_SEED_NODES, true,
         "comma-separated {IP/DOMAIN}:meta_port:data_port:client_port pairs");
     seedNodes.setRequired(false);
@@ -264,6 +271,12 @@ public class ClusterMain {
         logger.debug("replace local cluster rpc port with={}", 
clusterConfig.getClusterRpcPort());
       }
 
+      if (commandLine.hasOption(OPTION_CLUSTER_RPC_IP)) {
+        IoTDBDescriptor.getInstance().getConfig()
+            .setRpcAddress(commandLine.getOptionValue(OPTION_CLUSTER_RPC_IP));
+        logger.debug("replace local cluster rpc port with={}", 
clusterConfig.getClusterRpcPort());
+      }
+
       if (commandLine.hasOption(OPTION_SEED_NODES)) {
         String seedNodeUrls = commandLine.getOptionValue(OPTION_SEED_NODES);
         
clusterConfig.setSeedNodeUrls(ClusterDescriptor.getSeedUrlList(seedNodeUrls));
diff --git 
a/cluster/src/main/java/org/apache/iotdb/cluster/client/DataClientProvider.java 
b/cluster/src/main/java/org/apache/iotdb/cluster/client/DataClientProvider.java
index cb8a05c..28a8540 100644
--- 
a/cluster/src/main/java/org/apache/iotdb/cluster/client/DataClientProvider.java
+++ 
b/cluster/src/main/java/org/apache/iotdb/cluster/client/DataClientProvider.java
@@ -41,7 +41,7 @@ public class DataClientProvider {
     if (!ClusterDescriptor.getInstance().getConfig().isUseAsyncServer()) {
       dataSyncClientPool = new SyncClientPool(new 
SyncDataClient.FactorySync(factory));
     } else {
-      dataAsyncClientPool = new AsyncClientPool(new FactoryAsync(factory));
+      dataAsyncClientPool = new AsyncClientPool("dataClientProvider", new 
FactoryAsync(factory));
     }
   }
 
diff --git 
a/cluster/src/main/java/org/apache/iotdb/cluster/client/async/AsyncClientPool.java
 
b/cluster/src/main/java/org/apache/iotdb/cluster/client/async/AsyncClientPool.java
index 9901840..fd91909 100644
--- 
a/cluster/src/main/java/org/apache/iotdb/cluster/client/async/AsyncClientPool.java
+++ 
b/cluster/src/main/java/org/apache/iotdb/cluster/client/async/AsyncClientPool.java
@@ -54,18 +54,18 @@ public class AsyncClientPool {
   private static final int MAX_ERROR_COUNT = 3;
   private static final int PROBE_NODE_STATUS_PERIOD_SECOND = 60;
 
-  public AsyncClientPool(AsyncClientFactory asyncClientFactory) {
-    this(asyncClientFactory, true);
+  public AsyncClientPool(String namePredix, AsyncClientFactory 
asyncClientFactory) {
+    this(namePredix, asyncClientFactory, true);
   }
 
-  public AsyncClientPool(AsyncClientFactory asyncClientFactory, boolean 
blockOnError) {
+  public AsyncClientPool(String namePredix, AsyncClientFactory 
asyncClientFactory, boolean blockOnError) {
     this.asyncClientFactory = asyncClientFactory;
     this.maxConnectionForEachNode =
         
ClusterDescriptor.getInstance().getConfig().getMaxClientPerNodePerMember();
     this.blockOnError = blockOnError;
     if (blockOnError) {
       this.cleanErrorClientExecutorService = new ScheduledThreadPoolExecutor(1,
-          new 
BasicThreadFactory.Builder().namingPattern("clean-error-client-%d").daemon(true)
+          new BasicThreadFactory.Builder().namingPattern(namePredix + 
"-clean-error-client-%d").daemon(true)
               .build());
       this.cleanErrorClientExecutorService
           .scheduleAtFixedRate(this::cleanErrorClients, 
PROBE_NODE_STATUS_PERIOD_SECOND,
diff --git 
a/cluster/src/main/java/org/apache/iotdb/cluster/client/sync/SyncClientPool.java
 
b/cluster/src/main/java/org/apache/iotdb/cluster/client/sync/SyncClientPool.java
index 535a815..1e538c8 100644
--- 
a/cluster/src/main/java/org/apache/iotdb/cluster/client/sync/SyncClientPool.java
+++ 
b/cluster/src/main/java/org/apache/iotdb/cluster/client/sync/SyncClientPool.java
@@ -44,7 +44,7 @@ public class SyncClientPool {
   private Map<ClusterNode, Integer> nodeClientNumMap = new 
ConcurrentHashMap<>();
   private SyncClientFactory syncClientFactory;
 
-  public SyncClientPool(SyncClientFactory syncClientFactory) {
+  public SyncClientPool (SyncClientFactory syncClientFactory) {
     this.syncClientFactory = syncClientFactory;
     this.maxConnectionForEachNode =
         
ClusterDescriptor.getInstance().getConfig().getMaxClientPerNodePerMember();
diff --git 
a/cluster/src/main/java/org/apache/iotdb/cluster/server/member/DataGroupMember.java
 
b/cluster/src/main/java/org/apache/iotdb/cluster/server/member/DataGroupMember.java
index de200cf..8790d81 100644
--- 
a/cluster/src/main/java/org/apache/iotdb/cluster/server/member/DataGroupMember.java
+++ 
b/cluster/src/main/java/org/apache/iotdb/cluster/server/member/DataGroupMember.java
@@ -158,11 +158,11 @@ public class DataGroupMember extends RaftMember {
   DataGroupMember(TProtocolFactory factory, PartitionGroup nodes, Node 
thisNode,
       MetaGroupMember metaGroupMember) {
     super("Data(" + nodes.getHeader().getIp() + ":" + 
nodes.getHeader().getMetaPort() + ")",
-        new AsyncClientPool(new AsyncDataClient.FactoryAsync(factory)),
+        new AsyncClientPool(nodes.getHeader().getIp(), new 
AsyncDataClient.FactoryAsync(factory)),
         new SyncClientPool(new SyncDataClient.FactorySync(factory)),
-        new AsyncClientPool(new 
AsyncDataHeartbeatClient.FactoryAsync(factory), false),
+        new AsyncClientPool(nodes.getHeader().getIp(), new 
AsyncDataHeartbeatClient.FactoryAsync(factory), false),
         new SyncClientPool(new SyncDataHeartbeatClient.FactorySync(factory)),
-        new AsyncClientPool(new SingleManagerFactory(factory)));
+        new AsyncClientPool(nodes.getHeader().getIp(), new 
SingleManagerFactory(factory)));
     this.thisNode = thisNode;
     this.metaGroupMember = metaGroupMember;
     allNodes = nodes;
diff --git 
a/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java
 
b/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java
index 863314f..85fed0d 100644
--- 
a/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java
+++ 
b/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java
@@ -269,9 +269,9 @@ public class MetaGroupMember extends RaftMember {
   }
 
   public MetaGroupMember(TProtocolFactory factory, Node thisNode) throws 
QueryProcessException {
-    super("Meta", new AsyncClientPool(new 
AsyncMetaClient.FactoryAsync(factory)),
+    super("Meta", new AsyncClientPool("Meta", new 
AsyncMetaClient.FactoryAsync(factory)),
         new SyncClientPool(new SyncMetaClient.FactorySync(factory)),
-        new AsyncClientPool(new 
AsyncMetaHeartbeatClient.FactoryAsync(factory), false),
+        new AsyncClientPool("Meta", new 
AsyncMetaHeartbeatClient.FactoryAsync(factory), false),
         new SyncClientPool(new SyncMetaHeartbeatClient.FactorySync(factory)));
     allNodes = new ArrayList<>();
     initPeerMap();
diff --git 
a/cluster/src/main/java/org/apache/iotdb/cluster/utils/ClusterNode.java 
b/cluster/src/main/java/org/apache/iotdb/cluster/utils/ClusterNode.java
index 0251641..1e5b15b 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/utils/ClusterNode.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/utils/ClusterNode.java
@@ -28,11 +28,12 @@ import org.apache.iotdb.cluster.rpc.thrift.Node;
  */
 public class ClusterNode extends Node {
 
+  //TODO hxd: maintain the client IP and Port
   public ClusterNode() {
   }
 
-  public ClusterNode(String ip, int metaPort, int nodeIdentifier, int 
dataPort, int clientPort) {
-    super(ip, metaPort, nodeIdentifier, dataPort, clientPort);
+  public ClusterNode(String ip, int metaPort, int nodeIdentifier, int 
dataPort) {
+    super(ip, metaPort, nodeIdentifier, dataPort);
   }
 
   public ClusterNode(Node other) {
diff --git 
a/cluster/src/main/java/org/apache/iotdb/cluster/utils/ClusterUtils.java 
b/cluster/src/main/java/org/apache/iotdb/cluster/utils/ClusterUtils.java
index 395ce03..b5b22de 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/utils/ClusterUtils.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/utils/ClusterUtils.java
@@ -55,7 +55,7 @@ public class ClusterUtils {
 
   public static final int WAIT_START_UP_CHECK_TIME_SEC = 5;
 
-  public static final long START_UP_TIME_THRESHOLD_MS = 60 * 1000L;
+  public static final long START_UP_TIME_THRESHOLD_MS = 600 * 1000L;
 
   public static final long START_UP_CHECK_TIME_INTERVAL_MS = 3 * 1000L;
 
@@ -281,8 +281,8 @@ public class ClusterUtils {
     int metaPort = Integer.parseInt(str.substring(metaPortFirstPos, 
metaPortLastPos));
     int id = Integer.parseInt(str.substring(idFirstPos, idLastPos));
     int dataPort = Integer.parseInt(str.substring(dataPortFirstPos, 
dataPortLastPos));
-    int clientPort = Integer.parseInt(str.substring(clientPortFirstPos, 
clientPortLastPos));
-    return new Node(ip, metaPort, id, dataPort, clientPort);
+    //TODO hxd: we do not set values to all fields of a Node.
+    return new Node(ip, metaPort, id, dataPort);
   }
 
   public static Node parseNode(String nodeUrl) {
diff --git 
a/cluster/src/test/java/org/apache/iotdb/cluster/client/async/AsyncClientPoolTest.java
 
b/cluster/src/test/java/org/apache/iotdb/cluster/client/async/AsyncClientPoolTest.java
index 12eb645..9581903 100644
--- 
a/cluster/src/test/java/org/apache/iotdb/cluster/client/async/AsyncClientPoolTest.java
+++ 
b/cluster/src/test/java/org/apache/iotdb/cluster/client/async/AsyncClientPoolTest.java
@@ -53,7 +53,7 @@ public class AsyncClientPoolTest {
   }
 
   private void getClient() throws IOException {
-    AsyncClientPool asyncClientPool = new 
AsyncClientPool(testAsyncClientFactory);
+    AsyncClientPool asyncClientPool = new AsyncClientPool("Test", 
testAsyncClientFactory);
     for (int i = 0; i < 10; i++) {
       AsyncClient client = asyncClientPool.getClient(TestUtils.getNode(i));
       if (client instanceof TestAsyncClient) {
@@ -64,7 +64,7 @@ public class AsyncClientPoolTest {
   }
 
   private void putClient() throws IOException {
-    AsyncClientPool asyncClientPool = new 
AsyncClientPool(testAsyncClientFactory);
+    AsyncClientPool asyncClientPool = new AsyncClientPool("Test", 
testAsyncClientFactory);
     List<AsyncClient> testClients = new ArrayList<>();
     for (int i = 0; i < 10; i++) {
       AsyncClient client = asyncClientPool.getClient(TestUtils.getNode(i));
@@ -95,7 +95,7 @@ public class AsyncClientPoolTest {
     int maxClientNum = 
ClusterDescriptor.getInstance().getConfig().getMaxClientPerNodePerMember();
     
ClusterDescriptor.getInstance().getConfig().setMaxClientPerNodePerMember(5);
     testAsyncClientFactory = new TestAsyncClientFactory();
-    AsyncClientPool asyncClientPool = new 
AsyncClientPool(testAsyncClientFactory);
+    AsyncClientPool asyncClientPool = new AsyncClientPool("Test", 
testAsyncClientFactory);
 
     for (int i = 0; i < 5; i++) {
       asyncClientPool.getClient(TestUtils.getNode(0));
@@ -121,7 +121,7 @@ public class AsyncClientPoolTest {
     try {
       
ClusterDescriptor.getInstance().getConfig().setMaxClientPerNodePerMember(10);
       testAsyncClientFactory = new TestAsyncClientFactory();
-      AsyncClientPool asyncClientPool = new 
AsyncClientPool(testAsyncClientFactory);
+      AsyncClientPool asyncClientPool = new AsyncClientPool("Test", 
testAsyncClientFactory);
 
       Node node = TestUtils.getNode(0);
       List<AsyncClient> clients = new ArrayList<>();
@@ -160,7 +160,7 @@ public class AsyncClientPoolTest {
     try {
       
ClusterDescriptor.getInstance().getConfig().setMaxClientPerNodePerMember(1);
       testAsyncClientFactory = new TestAsyncClientFactory();
-      AsyncClientPool asyncClientPool = new 
AsyncClientPool(testAsyncClientFactory);
+      AsyncClientPool asyncClientPool = new AsyncClientPool("Test", 
testAsyncClientFactory);
 
       Node node = TestUtils.getNode(0);
       List<AsyncClient> clients = new ArrayList<>();
@@ -177,7 +177,7 @@ public class AsyncClientPoolTest {
   @Test
   public void testRecreateClient() throws IOException {
     testAsyncClientFactory = new TestAsyncClientFactory();
-    AsyncClientPool asyncClientPool = new AsyncClientPool(new 
AsyncMetaClient.FactoryAsync(new Factory()));
+    AsyncClientPool asyncClientPool = new AsyncClientPool("Test", new 
AsyncMetaClient.FactoryAsync(new Factory()));
 
     AsyncMetaClient client = (AsyncMetaClient) 
asyncClientPool.getClient(TestUtils.getNode(0));
     client.onError(new Exception());
diff --git 
a/cluster/src/test/java/org/apache/iotdb/cluster/client/async/AsyncDataClientTest.java
 
b/cluster/src/test/java/org/apache/iotdb/cluster/client/async/AsyncDataClientTest.java
index 7030fc1..5f9afab 100644
--- 
a/cluster/src/test/java/org/apache/iotdb/cluster/client/async/AsyncDataClientTest.java
+++ 
b/cluster/src/test/java/org/apache/iotdb/cluster/client/async/AsyncDataClientTest.java
@@ -25,7 +25,7 @@ public class AsyncDataClientTest {
 
   @Test
   public void test() throws IOException, TException {
-    AsyncClientPool asyncClientPool = new AsyncClientPool(new 
SingleManagerFactory(new Factory()));
+    AsyncClientPool asyncClientPool = new AsyncClientPool("Test", new 
SingleManagerFactory(new Factory()));
     AsyncDataClient client;
     Node node = TestUtils.getNode(0);
     client = new AsyncDataClient(new Factory(), new TAsyncClientManager(),
diff --git 
a/cluster/src/test/java/org/apache/iotdb/cluster/client/async/AsyncMetaClientTest.java
 
b/cluster/src/test/java/org/apache/iotdb/cluster/client/async/AsyncMetaClientTest.java
index ffca8c5..5e795f0 100644
--- 
a/cluster/src/test/java/org/apache/iotdb/cluster/client/async/AsyncMetaClientTest.java
+++ 
b/cluster/src/test/java/org/apache/iotdb/cluster/client/async/AsyncMetaClientTest.java
@@ -25,7 +25,7 @@ public class AsyncMetaClientTest {
 
   @Test
   public void test() throws IOException, TException {
-    AsyncClientPool asyncClientPool = new AsyncClientPool(new FactoryAsync(new 
Factory()));
+    AsyncClientPool asyncClientPool = new AsyncClientPool("Test", new 
FactoryAsync(new Factory()));
     AsyncMetaClient client;
     Node node = TestUtils.getNode(0);
     client = new AsyncMetaClient(new Factory(), new TAsyncClientManager(),
diff --git 
a/cluster/src/test/java/org/apache/iotdb/cluster/common/TestPartitionedLogManager.java
 
b/cluster/src/test/java/org/apache/iotdb/cluster/common/TestPartitionedLogManager.java
index 790d048..7eb331b 100644
--- 
a/cluster/src/test/java/org/apache/iotdb/cluster/common/TestPartitionedLogManager.java
+++ 
b/cluster/src/test/java/org/apache/iotdb/cluster/common/TestPartitionedLogManager.java
@@ -29,7 +29,9 @@ import org.apache.iotdb.cluster.utils.Constants;
 public class TestPartitionedLogManager extends PartitionedSnapshotLogManager {
 
   public TestPartitionedLogManager() {
-    super(new TestLogApplier(), null, new Node("localhost", 30001, 1, 40001, 
Constants.RPC_PORT), null, null,
+    super(new TestLogApplier(), null,
+        new Node("localhost", 30001, 1, 40001).setClientIp("localhost")
+            .setClientPort(Constants.RPC_PORT), null, null,
         null);
   }
 
@@ -37,9 +39,9 @@ public class TestPartitionedLogManager extends 
PartitionedSnapshotLogManager {
       PartitionTable partitionTable,
       Node header,
       SnapshotFactory factory) {
-    super(logApplier, partitionTable, header, new Node("localhost", 30001, 1, 
40001, Constants.RPC_PORT),
-        factory,
-        null);
+    super(logApplier, partitionTable, header,
+        new Node("localhost", 30001, 1, 40001).setClientIp("localhost")
+            .setClientPort(Constants.RPC_PORT), factory, null);
   }
 
   @Override
diff --git 
a/cluster/src/test/java/org/apache/iotdb/cluster/log/HardStateTest.java 
b/cluster/src/test/java/org/apache/iotdb/cluster/log/HardStateTest.java
index 7295c9a..46e8ce7 100644
--- a/cluster/src/test/java/org/apache/iotdb/cluster/log/HardStateTest.java
+++ b/cluster/src/test/java/org/apache/iotdb/cluster/log/HardStateTest.java
@@ -33,7 +33,8 @@ public class HardStateTest {
     // Not NULL
     HardState state = new HardState();
     state.setCurrentTerm(2);
-    state.setVoteFor(new Node("127.0.0.1", 30000, 0, 40000, 
Constants.RPC_PORT));
+    state.setVoteFor(new Node("127.0.0.1", 30000, 0, 40000)
+                      
.setClientIp("127.0.0.1").setClientPort(Constants.RPC_PORT));
     ByteBuffer buffer = state.serialize();
     HardState newState = HardState.deserialize(buffer);
     assertEquals(state, newState);
diff --git 
a/cluster/src/test/java/org/apache/iotdb/cluster/log/applier/MetaLogApplierTest.java
 
b/cluster/src/test/java/org/apache/iotdb/cluster/log/applier/MetaLogApplierTest.java
index a0235c5..1437d6f 100644
--- 
a/cluster/src/test/java/org/apache/iotdb/cluster/log/applier/MetaLogApplierTest.java
+++ 
b/cluster/src/test/java/org/apache/iotdb/cluster/log/applier/MetaLogApplierTest.java
@@ -79,8 +79,10 @@ public class MetaLogApplierTest extends IoTDBTest {
   public void testApplyAddNode()
       throws QueryProcessException, StorageGroupNotSetException, 
StorageEngineException {
     nodes.clear();
-
-    Node node = new Node("localhost", 1111, 0, 2222, Constants.RPC_PORT);
+    //TODO hxd:
+    Node node = new Node("localhost", 1111, 0, 2222);
+    node.setClientIp("localhost");
+    node.setClientPort(Constants.RPC_PORT);
     AddNodeLog log = new AddNodeLog();
     log.setNewNode(node);
     applier.apply(log);
diff --git 
a/cluster/src/test/java/org/apache/iotdb/cluster/log/logtypes/SerializeLogTest.java
 
b/cluster/src/test/java/org/apache/iotdb/cluster/log/logtypes/SerializeLogTest.java
index 3d66524..a3d7cde 100644
--- 
a/cluster/src/test/java/org/apache/iotdb/cluster/log/logtypes/SerializeLogTest.java
+++ 
b/cluster/src/test/java/org/apache/iotdb/cluster/log/logtypes/SerializeLogTest.java
@@ -32,7 +32,6 @@ import org.apache.iotdb.cluster.log.LogParser;
 import org.apache.iotdb.cluster.rpc.thrift.Node;
 import org.apache.iotdb.cluster.utils.Constants;
 import org.apache.iotdb.db.exception.metadata.IllegalPathException;
-import org.apache.iotdb.db.exception.query.QueryProcessException;
 import org.apache.iotdb.db.metadata.PartialPath;
 import org.apache.iotdb.db.metadata.mnode.MeasurementMNode;
 import org.apache.iotdb.db.qp.physical.crud.InsertRowPlan;
@@ -90,7 +89,8 @@ public class SerializeLogTest {
     AddNodeLog log = new AddNodeLog();
     log.setCurrLogIndex(2);
     log.setCurrLogTerm(2);
-    log.setNewNode(new Node("apache.iotdb.com", 1234, 1, 4321, 
Constants.RPC_PORT));
+    log.setNewNode(new Node("apache.iotdb.com", 1234, 1, 
4321).setClientIp("apache.iotdb.com")
+        .setClientPort(Constants.RPC_PORT));
     ByteBuffer byteBuffer = log.serialize();
     Log logPrime = LogParser.getINSTANCE().parse(byteBuffer);
     assertEquals(log, logPrime);
diff --git 
a/cluster/src/test/java/org/apache/iotdb/cluster/partition/SlotPartitionTableTest.java
 
b/cluster/src/test/java/org/apache/iotdb/cluster/partition/SlotPartitionTableTest.java
index b4a8a51..7846cdd 100644
--- 
a/cluster/src/test/java/org/apache/iotdb/cluster/partition/SlotPartitionTableTest.java
+++ 
b/cluster/src/test/java/org/apache/iotdb/cluster/partition/SlotPartitionTableTest.java
@@ -200,14 +200,14 @@ public class SlotPartitionTableTest {
 
   private void assertGetHeaderGroup(int start, int last) {
     PartitionGroup group = localTable
-        .getHeaderGroup(new Node("localhost", 30000 + start, start, 40000 + 
start,
-            Constants.RPC_PORT + start));
+        .getHeaderGroup(new Node("localhost", 30000 + start, start, 40000 + 
start)
+            .setClientIp("localhost").setClientPort(Constants.RPC_PORT + 
start));
     assertEquals(replica_size, group.size());
-    assertEquals(new Node("localhost", 30000 + start, start, 40000 + start,
-            Constants.RPC_PORT + start),  group.getHeader());
+    assertEquals(new Node("localhost", 30000 + start, start, 40000 + start)
+        .setClientIp("localhost").setClientPort(Constants.RPC_PORT + start),  
group.getHeader());
     assertEquals(
-        new Node("localhost", 30000 + last, last, 40000 + last,
-            Constants.RPC_PORT + start), group.get(replica_size - 1));
+        new Node("localhost", 30000 + last, last, 40000 + last)
+            .setClientIp("localhost").setClientPort(Constants.RPC_PORT + 
start), group.get(replica_size - 1));
   }
 
   private void assertPartitionGroup(PartitionGroup group, int... nodeIds) {
@@ -507,7 +507,8 @@ public class SlotPartitionTableTest {
   }
 
   private Node getNode(int i) {
-    return new Node("localhost", 30000 + i, i, 40000 + i, Constants.RPC_PORT + 
i);
+    return new Node("localhost", 30000 + i, i, 40000 + i)
+        .setClientIp("localhost").setClientPort(Constants.RPC_PORT + i);
   }
 
   @Test
diff --git 
a/cluster/src/test/java/org/apache/iotdb/cluster/server/handlers/caller/HeartbeatHandlerTest.java
 
b/cluster/src/test/java/org/apache/iotdb/cluster/server/handlers/caller/HeartbeatHandlerTest.java
index 7efc9b2..b75f8b2 100644
--- 
a/cluster/src/test/java/org/apache/iotdb/cluster/server/handlers/caller/HeartbeatHandlerTest.java
+++ 
b/cluster/src/test/java/org/apache/iotdb/cluster/server/handlers/caller/HeartbeatHandlerTest.java
@@ -73,7 +73,8 @@ public class HeartbeatHandlerTest {
     HeartBeatResponse response = new HeartBeatResponse();
     response.setTerm(Response.RESPONSE_AGREE);
     response.setLastLogTerm(-2);
-    response.setFollower(new Node("192.168.0.6", 9003, 6, 40010, 
Constants.RPC_PORT));
+    response.setFollower(new Node("192.168.0.6", 9003, 6, 
40010).setClientIp("192.168.0.6")
+        .setClientPort(Constants.RPC_PORT));
     catchUpFlag = false;
     for (int i = 0; i < looseInconsistentNum; i++) {
       handler.onComplete(response);
diff --git 
a/cluster/src/test/java/org/apache/iotdb/cluster/server/member/DataGroupMemberTest.java
 
b/cluster/src/test/java/org/apache/iotdb/cluster/server/member/DataGroupMemberTest.java
index aaf95ba..98f24f0 100644
--- 
a/cluster/src/test/java/org/apache/iotdb/cluster/server/member/DataGroupMemberTest.java
+++ 
b/cluster/src/test/java/org/apache/iotdb/cluster/server/member/DataGroupMemberTest.java
@@ -312,8 +312,10 @@ public class DataGroupMemberTest extends MemberTest {
     testMetaMember.getTerm().set(10);
     List<Log> metaLogs = TestUtils.prepareTestLogs(6);
     metaLogManager.append(metaLogs);
-    Node voteFor = new Node("127.0.0.1", 30000, 0, 40000, Constants.RPC_PORT);
-    Node elector = new Node("127.0.0.1", 30001, 1, 40001, Constants.RPC_PORT + 
1);
+    Node voteFor = new Node("127.0.0.1", 30000, 0, 
40000).setClientIp("127.0.0.1")
+        .setClientPort(Constants.RPC_PORT);
+    Node elector = new Node("127.0.0.1", 30001, 1, 
40001).setClientIp("127.0.0.1")
+        .setClientPort(Constants.RPC_PORT + 1);
 
     // a request with smaller term
     ElectionRequest electionRequest = new ElectionRequest();
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 fdc517b..3d583b9 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
@@ -922,7 +922,8 @@ public class MetaGroupMemberTest extends MemberTest {
     request.setLeaderCommit(0);
     request.setPrevLogIndex(-1);
     request.setPrevLogTerm(-1);
-    request.setLeader(new Node("127.0.0.1", 30000, 0, 40000, 
Constants.RPC_PORT));
+    request.setLeader(new Node("127.0.0.1", 30000, 0, 
40000).setClientIp("127.0.0.1")
+        .setClientPort(Constants.RPC_PORT));
     AtomicReference<Long> result = new AtomicReference<>();
     GenericHandler<Long> handler = new GenericHandler<>(TestUtils.getNode(0), 
result);
     new MetaAsyncService(testMetaMember).appendEntry(request, handler);
diff --git a/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java 
b/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
index 1d669e8..8fd69dc 100644
--- a/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
+++ b/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
@@ -961,7 +961,7 @@ public class IoTDBConfig {
     return rpcAddress;
   }
 
-  void setRpcAddress(String rpcAddress) {
+  public void setRpcAddress(String rpcAddress) {
     this.rpcAddress = rpcAddress;
   }
 

Reply via email to