You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by qi...@apache.org on 2021/11/18 01:11:01 UTC

[iotdb] 01/01: add javadoc for cluster

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

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

commit 72e1cb5825498f339b4e4adbd4d7e48880e2da7a
Author: qiaojialin <64...@qq.com>
AuthorDate: Thu Nov 18 09:10:01 2021 +0800

    add javadoc for cluster
---
 .../cluster/partition/NodeAdditionResult.java      |  4 +-
 .../iotdb/cluster/partition/NodeRemovalResult.java |  2 +-
 .../iotdb/cluster/partition/PartitionGroup.java    |  5 +--
 .../iotdb/cluster/partition/PartitionTable.java    |  6 +--
 .../partition/balancer/DefaultSlotBalancer.java    |  6 ++-
 .../cluster/partition/balancer/SlotBalancer.java   |  4 +-
 .../iotdb/cluster/partition/slot/SlotManager.java  |  2 +-
 .../partition/slot/SlotNodeAdditionResult.java     |  2 +-
 .../cluster/partition/slot/SlotPartitionTable.java | 44 +++++++++++-----------
 .../iotdb/cluster/partition/slot/SlotStrategy.java |  2 +-
 .../partition/slot/SlotTimePartitionFilter.java    |  3 +-
 .../cluster/server/member/DataGroupMember.java     |  3 +-
 .../cluster/server/member/MetaGroupMember.java     |  4 +-
 .../cluster/server/service/DataGroupEngine.java    |  4 +-
 .../cluster/utils/nodetool/ClusterMonitor.java     |  2 +-
 .../cluster/partition/SlotPartitionTableTest.java  |  2 +-
 .../server/heartbeat/MetaHeartbeatThreadTest.java  |  2 +-
 .../iotdb/cluster/server/member/BaseMember.java    |  4 +-
 .../cluster/server/member/DataGroupMemberTest.java | 13 ++++---
 .../cluster/server/member/RaftMemberTest.java      |  4 +-
 20 files changed, 62 insertions(+), 56 deletions(-)

diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/partition/NodeAdditionResult.java b/cluster/src/main/java/org/apache/iotdb/cluster/partition/NodeAdditionResult.java
index 2d8dadd..95256b9 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/partition/NodeAdditionResult.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/partition/NodeAdditionResult.java
@@ -24,8 +24,8 @@ import java.util.List;
 
 public class NodeAdditionResult {
 
-  /** A new data group headed by the new node. */
-  private List<PartitionGroup> newGroupList = new ArrayList<>();
+  /** new data groups(multi raft) headed by the new node. */
+  private final List<PartitionGroup> newGroupList = new ArrayList<>();
 
   public List<PartitionGroup> getNewGroupList() {
     return newGroupList;
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/partition/NodeRemovalResult.java b/cluster/src/main/java/org/apache/iotdb/cluster/partition/NodeRemovalResult.java
index ab4d413..ca34651 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/partition/NodeRemovalResult.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/partition/NodeRemovalResult.java
@@ -28,7 +28,7 @@ import java.util.List;
 /** NodeRemovalResult stores the removed partition group. */
 public class NodeRemovalResult {
 
-  private List<PartitionGroup> removedGroupList = new ArrayList<>();
+  private final List<PartitionGroup> removedGroupList = new ArrayList<>();
 
   public PartitionGroup getRemovedGroup(int raftId) {
     for (PartitionGroup group : removedGroupList) {
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/partition/PartitionGroup.java b/cluster/src/main/java/org/apache/iotdb/cluster/partition/PartitionGroup.java
index b86726b..afe6359 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/partition/PartitionGroup.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/partition/PartitionGroup.java
@@ -32,9 +32,8 @@ import java.util.Collection;
 import java.util.Objects;
 
 /**
- * PartitionGroup contains all the nodes that will form a data group with a certain node, which are
- * the REPLICATION_NUM - 1 different physical nodes after this node. The first element of the list
- * is called header, which is also the identifier of the data group.
+ * PartitionGroup contains all the nodes of a data group. The first element of the list is called
+ * header, which is also the id of this partition group.
  */
 public class PartitionGroup extends ArrayList<Node> {
 
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/partition/PartitionTable.java b/cluster/src/main/java/org/apache/iotdb/cluster/partition/PartitionTable.java
index 4b4129a..ad2ad5b 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/partition/PartitionTable.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/partition/PartitionTable.java
@@ -34,7 +34,7 @@ import java.util.List;
 
 /**
  * PartitionTable manages the map whose key is the StorageGroupName with a time interval and the
- * value is a PartitionGroup witch contains all nodes that manage the corresponding data.
+ * value is a PartitionGroup which contains all nodes that manage the corresponding data.
  */
 public interface PartitionTable {
 
@@ -88,10 +88,10 @@ public interface PartitionTable {
   List<PartitionGroup> getLocalGroups();
 
   /**
-   * @param raftNode
+   * @param headerNode from which node the partition starts
    * @return the partition group starting from the header.
    */
-  PartitionGroup getHeaderGroup(RaftNode raftNode);
+  PartitionGroup getPartitionGroup(RaftNode headerNode);
 
   ByteBuffer serialize();
 
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/partition/balancer/DefaultSlotBalancer.java b/cluster/src/main/java/org/apache/iotdb/cluster/partition/balancer/DefaultSlotBalancer.java
index f7bf377..2643123 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/partition/balancer/DefaultSlotBalancer.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/partition/balancer/DefaultSlotBalancer.java
@@ -75,7 +75,7 @@ public class DefaultSlotBalancer implements SlotBalancer {
         newNodeSlotMap.get(curNode).addAll(slotsToMove);
         for (Integer slot : slotsToMove) {
           // record what node previously hold the integer
-          previousNodeMap.get(curNode).put(slot, table.getHeaderGroup(entry.getKey(), oldRing));
+          previousNodeMap.get(curNode).put(slot, table.getPartitionGroup(entry.getKey(), oldRing));
           slotNodes[slot] = curNode;
         }
         slotsToMove.clear();
@@ -86,7 +86,9 @@ public class DefaultSlotBalancer implements SlotBalancer {
           newNodeSlotMap.get(curNode).addAll(slotsToMove);
           for (Integer slot : slotsToMove) {
             // record what node previously hold the integer
-            previousNodeMap.get(curNode).put(slot, table.getHeaderGroup(entry.getKey(), oldRing));
+            previousNodeMap
+                .get(curNode)
+                .put(slot, table.getPartitionGroup(entry.getKey(), oldRing));
             slotNodes[slot] = curNode;
           }
           slotsToMove.clear();
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/partition/balancer/SlotBalancer.java b/cluster/src/main/java/org/apache/iotdb/cluster/partition/balancer/SlotBalancer.java
index 3bfe241..20f7e4d 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/partition/balancer/SlotBalancer.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/partition/balancer/SlotBalancer.java
@@ -25,7 +25,7 @@ import org.apache.iotdb.cluster.rpc.thrift.RaftNode;
 import java.util.List;
 import java.util.Map;
 
-/** When add/remove node, the slots need to be redistributed. */
+/** When add/remove a node, the slots need to be redistributed. */
 public interface SlotBalancer {
 
   /**
@@ -34,7 +34,7 @@ public interface SlotBalancer {
   void moveSlotsToNew(Node newNode, List<Node> oldRing);
 
   /**
-   * When remove a old node, all hash slots of the removed groups will assigned to other raft
+   * When remove an old node, all hash slots of the removed groups will assigned to other raft
    * groups.
    *
    * @param target the node to be removed
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotManager.java b/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotManager.java
index 4b9be78..fb1928d 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotManager.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotManager.java
@@ -316,7 +316,7 @@ public class SlotManager {
     }
   }
 
-  public int getSloNumInDataMigration() {
+  public int getSlotNumInDataMigration() {
     int res = 0;
     for (Entry<Integer, SlotDescriptor> entry : idSlotMap.entrySet()) {
       SlotDescriptor descriptor = entry.getValue();
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotNodeAdditionResult.java b/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotNodeAdditionResult.java
index c6c702c..139aed4 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotNodeAdditionResult.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotNodeAdditionResult.java
@@ -27,7 +27,7 @@ import java.util.Set;
 
 public class SlotNodeAdditionResult extends NodeAdditionResult {
 
-  /** What slots will the old data groups transfer to the new one. */
+  /** which slots will the old data groups transfer to the new one. */
   private Map<RaftNode, Set<Integer>> lostSlots;
 
   public Map<RaftNode, Set<Integer>> getLostSlots() {
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotPartitionTable.java b/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotPartitionTable.java
index 7a46baa..78ec2bc 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotPartitionTable.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotPartitionTable.java
@@ -65,9 +65,11 @@ public class SlotPartitionTable implements PartitionTable {
   private static final Logger logger = LoggerFactory.getLogger(SlotPartitionTable.class);
   private static SlotStrategy slotStrategy = new DefaultStrategy();
 
-  private int replicationNum = ClusterDescriptor.getInstance().getConfig().getReplicationNum();
+  private final int replicationNum =
+      ClusterDescriptor.getInstance().getConfig().getReplicationNum();
 
-  private int multiRaftFactor = ClusterDescriptor.getInstance().getConfig().getMultiRaftFactor();
+  private final int multiRaftFactor =
+      ClusterDescriptor.getInstance().getConfig().getMultiRaftFactor();
 
   // all nodes
   private List<Node> nodeRing = new ArrayList<>();
@@ -203,7 +205,7 @@ public class SlotPartitionTable implements PartitionTable {
         startIndex = startIndex + nodeRing.size();
       }
       for (int j = 0; j < multiRaftFactor; j++) {
-        ret.add(getHeaderGroup(new RaftNode(nodeRing.get(startIndex), j)));
+        ret.add(getPartitionGroup(new RaftNode(nodeRing.get(startIndex), j)));
       }
     }
 
@@ -211,37 +213,37 @@ public class SlotPartitionTable implements PartitionTable {
     return ret;
   }
 
-  public PartitionGroup getHeaderGroup(RaftNode raftNode, List<Node> nodeRing) {
-    PartitionGroup ret = new PartitionGroup(raftNode.getRaftId());
+  public PartitionGroup getPartitionGroup(RaftNode header, List<Node> nodeRing) {
+    PartitionGroup ret = new PartitionGroup(header.getRaftId());
 
     // assuming the nodes are [1,2,3,4,5]
-    int nodeIndex = nodeRing.indexOf(raftNode.getNode());
+    int nodeIndex = nodeRing.indexOf(header.getNode());
     if (nodeIndex == -1) {
-      logger.warn("Node {} is not in the cluster", raftNode.getNode());
+      logger.warn("Node {} is not in the cluster", header.getNode());
       return null;
     }
     int endIndex = nodeIndex + replicationNum;
     if (endIndex > nodeRing.size()) {
-      // for startIndex = 4, we concat [4, 5] and [1] to generate the group
+      // for startIndex = 4 and replicationNum = 3, we concat [4, 5] and [1] to generate the group
       ret.addAll(nodeRing.subList(nodeIndex, nodeRing.size()));
       ret.addAll(nodeRing.subList(0, endIndex - nodeRing.size()));
     } else {
-      // for startIndex = 2, [2,3,4] is the group
+      // for startIndex = 2 and replicationNum = 3, [2,3,4] is the group
       ret.addAll(nodeRing.subList(nodeIndex, endIndex));
     }
     return ret;
   }
 
   @Override
-  public PartitionGroup getHeaderGroup(RaftNode raftNode) {
-    return getHeaderGroup(raftNode, this.nodeRing);
+  public PartitionGroup getPartitionGroup(RaftNode headerNode) {
+    return getPartitionGroup(headerNode, this.nodeRing);
   }
 
   @Override
   public PartitionGroup route(String storageGroupName, long timestamp) {
     synchronized (nodeRing) {
       RaftNode raftNode = routeToHeaderByTime(storageGroupName, timestamp);
-      return getHeaderGroup(raftNode);
+      return getPartitionGroup(raftNode);
     }
   }
 
@@ -259,7 +261,7 @@ public class SlotPartitionTable implements PartitionTable {
       logger.warn("The slot {} is incorrect", slot);
       return null;
     }
-    return getHeaderGroup(raftNode);
+    return getPartitionGroup(raftNode);
   }
 
   @Override
@@ -290,7 +292,7 @@ public class SlotPartitionTable implements PartitionTable {
       for (int i = 0; i < localGroups.size(); i++) {
         PartitionGroup oldGroup = localGroups.get(i);
         RaftNode header = oldGroup.getHeader();
-        PartitionGroup newGrp = getHeaderGroup(header);
+        PartitionGroup newGrp = getPartitionGroup(header);
         if (newGrp.contains(node) && newGrp.contains(thisNode)) {
           // this group changes but still contains the local node
           localGroups.set(i, newGrp);
@@ -315,7 +317,7 @@ public class SlotPartitionTable implements PartitionTable {
     }
 
     for (int raftId = 0; raftId < multiRaftFactor; raftId++) {
-      PartitionGroup newGroup = getHeaderGroup(new RaftNode(node, raftId));
+      PartitionGroup newGroup = getPartitionGroup(new RaftNode(node, raftId));
       if (newGroup.contains(thisNode)) {
         localGroups.add(newGroup);
       }
@@ -335,7 +337,7 @@ public class SlotPartitionTable implements PartitionTable {
     Map<RaftNode, Set<Integer>> lostSlotsMap = new HashMap<>();
     for (int raftId = 0; raftId < multiRaftFactor; raftId++) {
       RaftNode raftNode = new RaftNode(node, raftId);
-      result.addNewGroup(getHeaderGroup(raftNode));
+      result.addNewGroup(getPartitionGroup(raftNode));
       for (Entry<Integer, PartitionGroup> entry : previousNodeMap.get(raftNode).entrySet()) {
         RaftNode header = entry.getValue().getHeader();
         lostSlotsMap.computeIfAbsent(header, k -> new HashSet<>()).add(entry.getKey());
@@ -506,7 +508,7 @@ public class SlotPartitionTable implements PartitionTable {
 
       SlotNodeRemovalResult result = new SlotNodeRemovalResult();
       for (int raftId = 0; raftId < multiRaftFactor; raftId++) {
-        result.addRemovedGroup(getHeaderGroup(new RaftNode(target, raftId)));
+        result.addRemovedGroup(getPartitionGroup(new RaftNode(target, raftId)));
       }
       nodeRing.remove(target);
 
@@ -519,7 +521,7 @@ public class SlotPartitionTable implements PartitionTable {
         if (header.getNode().equals(target)) {
           removedGroupIdxs.add(i);
         } else {
-          PartitionGroup newGrp = getHeaderGroup(header);
+          PartitionGroup newGrp = getPartitionGroup(header);
           localGroups.set(i, newGrp);
         }
       }
@@ -540,7 +542,7 @@ public class SlotPartitionTable implements PartitionTable {
         int headerNodeIdx = thisNodeIdx - (replicationNum - 1);
         headerNodeIdx = headerNodeIdx < 0 ? headerNodeIdx + nodeRing.size() : headerNodeIdx;
         Node header = nodeRing.get(headerNodeIdx);
-        PartitionGroup newGrp = getHeaderGroup(new RaftNode(header, raftId));
+        PartitionGroup newGrp = getPartitionGroup(new RaftNode(header, raftId));
         localGroups.add(newGrp);
       }
 
@@ -576,7 +578,7 @@ public class SlotPartitionTable implements PartitionTable {
    * @param node target node
    */
   public boolean judgeHoldSlot(Node node, int slot) {
-    return getHeaderGroup(slotNodes[slot]).contains(node);
+    return getPartitionGroup(slotNodes[slot]).contains(node);
   }
 
   @Override
@@ -584,7 +586,7 @@ public class SlotPartitionTable implements PartitionTable {
     List<PartitionGroup> result = new ArrayList<>();
     for (Node node : nodeRing) {
       for (int i = 0; i < multiRaftFactor; i++) {
-        result.add(getHeaderGroup(new RaftNode(node, i), nodeRing));
+        result.add(getPartitionGroup(new RaftNode(node, i), nodeRing));
       }
     }
     return result;
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotStrategy.java b/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotStrategy.java
index 6d0032c..00680b9 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotStrategy.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotStrategy.java
@@ -24,7 +24,7 @@ import org.apache.iotdb.tsfile.utils.Murmur128Hash;
 
 import static org.apache.iotdb.cluster.config.ClusterConstant.HASH_SALT;
 
-/** SlotStrategy determines how a {storageGroupName, value} pair is distributed to a slot. */
+/** SlotStrategy determines which slot a {sg, timestamp} or {sg, partition} belongs. */
 public interface SlotStrategy {
   int calculateSlotByTime(String storageGroupName, long timestamp, int maxSlotNum);
 
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotTimePartitionFilter.java b/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotTimePartitionFilter.java
index 1296179..a864a1a 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotTimePartitionFilter.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/partition/slot/SlotTimePartitionFilter.java
@@ -25,9 +25,10 @@ import org.apache.iotdb.db.engine.storagegroup.StorageGroupProcessor.TimePartiti
 import java.util.Objects;
 import java.util.Set;
 
+/** Used for checking if a data partition belongs to the slotSet */
 public class SlotTimePartitionFilter implements TimePartitionFilter {
 
-  private Set<Integer> slotSet;
+  private final Set<Integer> slotSet;
 
   public SlotTimePartitionFilter(Set<Integer> slotSet) {
     this.slotSet = slotSet;
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 f611683..4c04f32 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
@@ -927,7 +927,8 @@ public class DataGroupMember extends RaftMember implements DataGroupMemberMBean
     synchronized (allNodes) {
       if (allNodes.contains(removedNode) && allNodes.size() == config.getReplicationNum()) {
         // update the group if the deleted node was in it
-        PartitionGroup newGroup = metaGroupMember.getPartitionTable().getHeaderGroup(getHeader());
+        PartitionGroup newGroup =
+            metaGroupMember.getPartitionTable().getPartitionGroup(getHeader());
         if (newGroup == null) {
           return;
         }
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 87e5aeb..037486a 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
@@ -1464,7 +1464,7 @@ public class MetaGroupMember extends RaftMember implements IService, MetaGroupMe
       }
       // translate the headers to groups
       for (RaftNode groupHeader : groupHeaders) {
-        partitionGroups.add(partitionTable.getHeaderGroup(groupHeader));
+        partitionGroups.add(partitionTable.getPartitionGroup(groupHeader));
       }
     }
     return partitionGroups;
@@ -1873,7 +1873,7 @@ public class MetaGroupMember extends RaftMember implements IService, MetaGroupMe
     syncLocalApply(getPartitionTable().getLastMetaLogIndex(), false);
     synchronized (headerMap) {
       for (DataGroupMember dataMember : headerMap.values()) {
-        int num = dataMember.getSlotManager().getSloNumInDataMigration();
+        int num = dataMember.getSlotManager().getSlotNumInDataMigration();
         if (num > 0) {
           groupSlotMap.put(dataMember.getPartitionGroup(), num);
         }
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/service/DataGroupEngine.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/service/DataGroupEngine.java
index 52672bc..58593af 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/server/service/DataGroupEngine.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/service/DataGroupEngine.java
@@ -220,11 +220,11 @@ public class DataGroupEngine implements IService, DataGroupEngineMBean {
   private DataGroupMember createNewMember(RaftNode header)
       throws NotInSameGroupException, CheckConsistencyException {
     PartitionGroup partitionGroup;
-    partitionGroup = partitionTable.getHeaderGroup(header);
+    partitionGroup = partitionTable.getPartitionGroup(header);
     if (partitionGroup == null || !partitionGroup.contains(thisNode)) {
       // if the partition table is old, this node may have not been moved to the new group
       metaGroupMember.syncLeaderWithConsistencyCheck(true);
-      partitionGroup = partitionTable.getHeaderGroup(header);
+      partitionGroup = partitionTable.getPartitionGroup(header);
     }
     DataGroupMember member;
     synchronized (headerGroupMap) {
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/utils/nodetool/ClusterMonitor.java b/cluster/src/main/java/org/apache/iotdb/cluster/utils/nodetool/ClusterMonitor.java
index e63adbe..60acc2f 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/utils/nodetool/ClusterMonitor.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/utils/nodetool/ClusterMonitor.java
@@ -187,7 +187,7 @@ public class ClusterMonitor implements ClusterMonitorMBean, IService {
           raftId++) {
         RaftNode raftNode = new RaftNode(header, raftId);
         raftGroupMapSlotNum.put(
-            partitionTable.getHeaderGroup(raftNode), nodeSlotMap.get(raftNode).size());
+            partitionTable.getPartitionGroup(raftNode), nodeSlotMap.get(raftNode).size());
       }
     }
     return raftGroupMapSlotNum;
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 115b48c..3e92609 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
@@ -205,7 +205,7 @@ public class SlotPartitionTableTest {
 
   private void assertGetHeaderGroup(int start, int last) {
     PartitionGroup group =
-        localTable.getHeaderGroup(
+        localTable.getPartitionGroup(
             new RaftNode(
                 new Node(
                     "localhost",
diff --git a/cluster/src/test/java/org/apache/iotdb/cluster/server/heartbeat/MetaHeartbeatThreadTest.java b/cluster/src/test/java/org/apache/iotdb/cluster/server/heartbeat/MetaHeartbeatThreadTest.java
index 63b4271..00b3f83 100644
--- a/cluster/src/test/java/org/apache/iotdb/cluster/server/heartbeat/MetaHeartbeatThreadTest.java
+++ b/cluster/src/test/java/org/apache/iotdb/cluster/server/heartbeat/MetaHeartbeatThreadTest.java
@@ -91,7 +91,7 @@ public class MetaHeartbeatThreadTest extends HeartbeatThreadTest {
         }
 
         @Override
-        public PartitionGroup getHeaderGroup(RaftNode header) {
+        public PartitionGroup getPartitionGroup(RaftNode headerNode) {
           return null;
         }
 
diff --git a/cluster/src/test/java/org/apache/iotdb/cluster/server/member/BaseMember.java b/cluster/src/test/java/org/apache/iotdb/cluster/server/member/BaseMember.java
index dc8c8e9..268acdc 100644
--- a/cluster/src/test/java/org/apache/iotdb/cluster/server/member/BaseMember.java
+++ b/cluster/src/test/java/org/apache/iotdb/cluster/server/member/BaseMember.java
@@ -215,7 +215,7 @@ public class BaseMember {
 
   private DataGroupMember newDataGroupMember(RaftNode raftNode) {
     DataGroupMember newMember =
-        new TestDataGroupMember(raftNode.getNode(), partitionTable.getHeaderGroup(raftNode)) {
+        new TestDataGroupMember(raftNode.getNode(), partitionTable.getPartitionGroup(raftNode)) {
 
           @Override
           public boolean syncLeader(RaftMember.CheckConsistency checkConsistency) {
@@ -247,7 +247,7 @@ public class BaseMember {
     newMember.setCharacter(NodeCharacter.LEADER);
     newMember.setLogManager(
         getLogManager(
-            partitionTable.getHeaderGroup(new RaftNode(TestUtils.getNode(0), 0)), newMember));
+            partitionTable.getPartitionGroup(new RaftNode(TestUtils.getNode(0), 0)), newMember));
 
     newMember.setAppendLogThreadPool(testThreadPool);
     return newMember;
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 a4cd06a..32f2bdf 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
@@ -183,7 +183,7 @@ public class DataGroupMemberTest extends BaseMember {
 
   @Override
   DataGroupMember getDataGroupMember(RaftNode raftNode) {
-    PartitionGroup nodes = partitionTable.getHeaderGroup(raftNode);
+    PartitionGroup nodes = partitionTable.getPartitionGroup(raftNode);
     return dataGroupMemberMap.computeIfAbsent(
         raftNode, n -> getDataGroupMember(n.getNode(), nodes));
   }
@@ -626,7 +626,8 @@ public class DataGroupMemberTest extends BaseMember {
     testMetaMember.setPartitionTable(partitionTable);
     dataGroupMember.setLogManager(
         getLogManager(
-            partitionTable.getHeaderGroup(new RaftNode(TestUtils.getNode(0), 0)), dataGroupMember));
+            partitionTable.getPartitionGroup(new RaftNode(TestUtils.getNode(0), 0)),
+            dataGroupMember));
     assertEquals(200, dataGroupMember.executeNonQueryPlan(createTimeSeriesPlan).code);
     assertTrue(IoTDB.metaManager.isPathExist(new PartialPath(timeseriesSchema.getFullPath())));
     testThreadPool.shutdownNow();
@@ -732,7 +733,7 @@ public class DataGroupMemberTest extends BaseMember {
     // node1 manages the data above
     dataGroupMember.setThisNode(TestUtils.getNode(10));
     dataGroupMember.setAllNodes(
-        partitionTable.getHeaderGroup(new RaftNode(TestUtils.getNode(10), raftId)));
+        partitionTable.getPartitionGroup(new RaftNode(TestUtils.getNode(10), raftId)));
     dataGroupMember.setCharacter(NodeCharacter.LEADER);
     SingleSeriesQueryRequest request = new SingleSeriesQueryRequest();
     request.setPath(Collections.singletonList(TestUtils.getTestSeries(0, 0)));
@@ -800,7 +801,7 @@ public class DataGroupMemberTest extends BaseMember {
     // node1 manages the data above
     dataGroupMember.setThisNode(TestUtils.getNode(10));
     dataGroupMember.setAllNodes(
-        partitionTable.getHeaderGroup(new RaftNode(TestUtils.getNode(10), raftId)));
+        partitionTable.getPartitionGroup(new RaftNode(TestUtils.getNode(10), raftId)));
     dataGroupMember.setCharacter(NodeCharacter.LEADER);
     SingleSeriesQueryRequest request = new SingleSeriesQueryRequest();
     request.setPath(Collections.singletonList(TestUtils.getTestSeries(0, 0)));
@@ -868,7 +869,7 @@ public class DataGroupMemberTest extends BaseMember {
     // node1 manages the data above
     dataGroupMember.setThisNode(TestUtils.getNode(10));
     dataGroupMember.setAllNodes(
-        partitionTable.getHeaderGroup(new RaftNode(TestUtils.getNode(10), 0)));
+        partitionTable.getPartitionGroup(new RaftNode(TestUtils.getNode(10), 0)));
     dataGroupMember.setCharacter(NodeCharacter.LEADER);
     SingleSeriesQueryRequest request = new SingleSeriesQueryRequest();
     request.setPath(Collections.singletonList(TestUtils.getTestSeries(0, 0)));
@@ -936,7 +937,7 @@ public class DataGroupMemberTest extends BaseMember {
     // node1 manages the data above
     dataGroupMember.setThisNode(TestUtils.getNode(10));
     dataGroupMember.setAllNodes(
-        partitionTable.getHeaderGroup(new RaftNode(TestUtils.getNode(10), 0)));
+        partitionTable.getPartitionGroup(new RaftNode(TestUtils.getNode(10), 0)));
     dataGroupMember.setCharacter(NodeCharacter.LEADER);
     SingleSeriesQueryRequest request = new SingleSeriesQueryRequest();
     request.setPath(Collections.singletonList(TestUtils.getTestSeries(0, 0)));
diff --git a/cluster/src/test/java/org/apache/iotdb/cluster/server/member/RaftMemberTest.java b/cluster/src/test/java/org/apache/iotdb/cluster/server/member/RaftMemberTest.java
index 0e94750..b94da9e 100644
--- a/cluster/src/test/java/org/apache/iotdb/cluster/server/member/RaftMemberTest.java
+++ b/cluster/src/test/java/org/apache/iotdb/cluster/server/member/RaftMemberTest.java
@@ -172,7 +172,7 @@ public class RaftMemberTest extends BaseMember {
 
   private DataGroupMember newDataGroupMemberWithSyncLeaderFalse(Node node, boolean syncLeader) {
     DataGroupMember newMember =
-        new TestDataGroupMember(node, partitionTable.getHeaderGroup(new RaftNode(node, 0))) {
+        new TestDataGroupMember(node, partitionTable.getPartitionGroup(new RaftNode(node, 0))) {
 
           @Override
           public boolean syncLeader(RaftMember.CheckConsistency checkConsistency) {
@@ -209,7 +209,7 @@ public class RaftMemberTest extends BaseMember {
 
   private DataGroupMember newDataGroupMemberWithSyncLeaderTrue(Node node, boolean syncLeader) {
     DataGroupMember newMember =
-        new TestDataGroupMember(node, partitionTable.getHeaderGroup(new RaftNode(node, 0))) {
+        new TestDataGroupMember(node, partitionTable.getPartitionGroup(new RaftNode(node, 0))) {
 
           @Override
           public boolean syncLeader(RaftMember.CheckConsistency checkConsistency) {