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

caogaofei pushed a commit to branch beyyes/feature/add_confignode_id
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit de35225aa70930f3ae0fd142e7bd61ce85654531
Author: beyyes <[email protected]>
AuthorDate: Wed May 25 20:20:29 2022 +0800

    add configNodeId for TConfigNodeLocation, and fix corresponding tests
---
 .../apache/iotdb/confignode/conf/ConfigNodeStartupCheck.java  |  4 ++--
 .../org/apache/iotdb/confignode/manager/ConsensusManager.java |  2 +-
 .../confignode/consensus/request/ConfigRequestSerDeTest.java  |  2 +-
 .../java/org/apache/iotdb/commons/utils/NodeUrlUtils.java     |  8 +++++---
 .../java/org/apache/iotdb/commons/utils/NodeUrlUtilsTest.java |  6 +++---
 .../iotdb/commons/utils/ThriftConfigNodeSerDeUtilsTest.java   |  2 +-
 thrift-commons/src/main/thrift/common.thrift                  | 11 +++++++++--
 7 files changed, 22 insertions(+), 13 deletions(-)

diff --git 
a/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeStartupCheck.java
 
b/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeStartupCheck.java
index 7480d78e0c..dd8a4ee103 100644
--- 
a/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeStartupCheck.java
+++ 
b/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeStartupCheck.java
@@ -169,7 +169,7 @@ public class ConfigNodeStartupCheck {
       // TODO: Set PartitionRegionId from iotdb-confignode.properties
       conf.setConfigNodeList(
           Collections.singletonList(
-              new TConfigNodeLocation(
+              new TConfigNodeLocation(0,
                   new TEndPoint(conf.getRpcAddress(), conf.getRpcPort()),
                   new TEndPoint(conf.getRpcAddress(), 
conf.getConsensusPort()))));
     }
@@ -180,7 +180,7 @@ public class ConfigNodeStartupCheck {
   private void registerConfigNode() throws StartupException {
     TConfigNodeRegisterReq req =
         new TConfigNodeRegisterReq(
-            new TConfigNodeLocation(
+            new TConfigNodeLocation(0,
                 new TEndPoint(conf.getRpcAddress(), conf.getRpcPort()),
                 new TEndPoint(conf.getRpcAddress(), conf.getConsensusPort())),
             conf.getDataNodeConsensusProtocolClass(),
diff --git 
a/confignode/src/main/java/org/apache/iotdb/confignode/manager/ConsensusManager.java
 
b/confignode/src/main/java/org/apache/iotdb/confignode/manager/ConsensusManager.java
index 702f5cfa05..e6ad4aaa96 100644
--- 
a/confignode/src/main/java/org/apache/iotdb/confignode/manager/ConsensusManager.java
+++ 
b/confignode/src/main/java/org/apache/iotdb/confignode/manager/ConsensusManager.java
@@ -113,7 +113,7 @@ public class ConsensusManager {
           SyncConfigNodeClientPool.getInstance()
               .applyConfigNode(
                   conf.getTargetConfigNode(),
-                  new TConfigNodeLocation(
+                  new TConfigNodeLocation(0,
                       new TEndPoint(conf.getRpcAddress(), conf.getRpcPort()),
                       new TEndPoint(conf.getRpcAddress(), 
conf.getConsensusPort())));
       if (status.getCode() != TSStatusCode.SUCCESS_STATUS.getStatusCode()) {
diff --git 
a/confignode/src/test/java/org/apache/iotdb/confignode/consensus/request/ConfigRequestSerDeTest.java
 
b/confignode/src/test/java/org/apache/iotdb/confignode/consensus/request/ConfigRequestSerDeTest.java
index 55bad48cf3..ece8155816 100644
--- 
a/confignode/src/test/java/org/apache/iotdb/confignode/consensus/request/ConfigRequestSerDeTest.java
+++ 
b/confignode/src/test/java/org/apache/iotdb/confignode/consensus/request/ConfigRequestSerDeTest.java
@@ -571,7 +571,7 @@ public class ConfigRequestSerDeTest {
   public void registerConfigNodeReqTest() throws IOException {
     ApplyConfigNodeReq req0 =
         new ApplyConfigNodeReq(
-            new TConfigNodeLocation(
+            new TConfigNodeLocation(0,
                 new TEndPoint("0.0.0.0", 22277), new TEndPoint("0.0.0.0", 
22278)));
     req0.serialize(buffer);
     buffer.flip();
diff --git 
a/node-commons/src/main/java/org/apache/iotdb/commons/utils/NodeUrlUtils.java 
b/node-commons/src/main/java/org/apache/iotdb/commons/utils/NodeUrlUtils.java
index a502e4d42e..3a9f96f672 100644
--- 
a/node-commons/src/main/java/org/apache/iotdb/commons/utils/NodeUrlUtils.java
+++ 
b/node-commons/src/main/java/org/apache/iotdb/commons/utils/NodeUrlUtils.java
@@ -144,18 +144,19 @@ public class NodeUrlUtils {
   /**
    * Parse TConfigNodeLocation from given TConfigNodeUrl
    *
+   * @param configNodeId configNode id
    * @param configNodeUrl InternalEndPointUrl,ConsensusEndPointUrl
    * @return TConfigNodeLocation
    * @throws BadNodeUrlException Throw when unable to parse
    */
-  public static TConfigNodeLocation parseTConfigNodeUrl(String configNodeUrl)
+  public static TConfigNodeLocation parseTConfigNodeUrl(int configNodeId, 
String configNodeUrl)
       throws BadNodeUrlException {
     String[] split = configNodeUrl.split(",");
     if (split.length != 2) {
       logger.warn("Bad ConfigNode url: {}", configNodeUrl);
       throw new BadNodeUrlException(String.format("Bad node url: %s", 
configNodeUrl));
     }
-    return new TConfigNodeLocation(parseTEndPointUrl(split[0]), 
parseTEndPointUrl(split[1]));
+    return new TConfigNodeLocation(configNodeId, parseTEndPointUrl(split[0]), 
parseTEndPointUrl(split[1]));
   }
 
   /**
@@ -168,8 +169,9 @@ public class NodeUrlUtils {
   public static List<TConfigNodeLocation> parseTConfigNodeUrls(List<String> 
configNodeUrls)
       throws BadNodeUrlException {
     List<TConfigNodeLocation> result = new ArrayList<>();
+    int configNodeId = 0;
     for (String url : configNodeUrls) {
-      result.add(parseTConfigNodeUrl(url));
+      result.add(parseTConfigNodeUrl(configNodeId++, url));
     }
     return result;
   }
diff --git 
a/node-commons/src/test/java/org/apache/iotdb/commons/utils/NodeUrlUtilsTest.java
 
b/node-commons/src/test/java/org/apache/iotdb/commons/utils/NodeUrlUtilsTest.java
index f6e497f309..a3348a5b7d 100644
--- 
a/node-commons/src/test/java/org/apache/iotdb/commons/utils/NodeUrlUtilsTest.java
+++ 
b/node-commons/src/test/java/org/apache/iotdb/commons/utils/NodeUrlUtilsTest.java
@@ -47,11 +47,11 @@ public class NodeUrlUtilsTest {
   public void parseAndConvertTConfigNodeUrlsTest() throws BadNodeUrlException {
     final List<TConfigNodeLocation> configNodeLocations =
         Arrays.asList(
-            new TConfigNodeLocation(
+            new TConfigNodeLocation(0,
                 new TEndPoint("0.0.0.0", 22277), new TEndPoint("0.0.0.0", 
22278)),
-            new TConfigNodeLocation(
+            new TConfigNodeLocation(1,
                 new TEndPoint("0.0.0.0", 22279), new TEndPoint("0.0.0.0", 
22280)),
-            new TConfigNodeLocation(
+            new TConfigNodeLocation(2,
                 new TEndPoint("0.0.0.0", 22281), new TEndPoint("0.0.0.0", 
22282)));
     final String configNodeUrls =
         
"0.0.0.0:22277,0.0.0.0:22278;0.0.0.0:22279,0.0.0.0:22280;0.0.0.0:22281,0.0.0.0:22282";
diff --git 
a/node-commons/src/test/java/org/apache/iotdb/commons/utils/ThriftConfigNodeSerDeUtilsTest.java
 
b/node-commons/src/test/java/org/apache/iotdb/commons/utils/ThriftConfigNodeSerDeUtilsTest.java
index 60e0adef7b..9b2d1d1bcd 100644
--- 
a/node-commons/src/test/java/org/apache/iotdb/commons/utils/ThriftConfigNodeSerDeUtilsTest.java
+++ 
b/node-commons/src/test/java/org/apache/iotdb/commons/utils/ThriftConfigNodeSerDeUtilsTest.java
@@ -70,7 +70,7 @@ public class ThriftConfigNodeSerDeUtilsTest {
   @Test
   public void readWriteTConfigNodeLocationTest() {
     TConfigNodeLocation configNodeLocation0 =
-        new TConfigNodeLocation(new TEndPoint("0.0.0.0", 22277), new 
TEndPoint("0.0.0.0", 22278));
+        new TConfigNodeLocation(0, new TEndPoint("0.0.0.0", 22277), new 
TEndPoint("0.0.0.0", 22278));
 
     
ThriftConfigNodeSerDeUtils.serializeTConfigNodeLocation(configNodeLocation0, 
buffer);
     buffer.flip();
diff --git a/thrift-commons/src/main/thrift/common.thrift 
b/thrift-commons/src/main/thrift/common.thrift
index aad4d3e13a..a95997dab9 100644
--- a/thrift-commons/src/main/thrift/common.thrift
+++ b/thrift-commons/src/main/thrift/common.thrift
@@ -58,8 +58,9 @@ struct TRegionReplicaSet {
 }
 
 struct TConfigNodeLocation {
-  1: required TEndPoint internalEndPoint
-  2: required TEndPoint consensusEndPoint
+  1: required i32 configNodeId
+  2: required TEndPoint internalEndPoint
+  3: required TEndPoint consensusEndPoint
 }
 
 struct THeartbeatReq {
@@ -84,6 +85,12 @@ struct THeartbeatResp {
   3: optional i16 memory
 }
 
+struct TConfigNodeInfo {
+  1: required TConfigNodeLocation location
+  2: required i32 cpuCoreNum
+  3: required i64 maxMemory
+}
+
 struct TDataNodeInfo {
   1: required TDataNodeLocation location
   2: required i32 cpuCoreNum

Reply via email to