This is an automated email from the ASF dual-hosted git repository. caogaofei pushed a commit to branch beyyes/confignode_develop in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 4fa73b3565d657f24cec8634b5949bd6bcb85461 Author: Beyyes <[email protected]> AuthorDate: Fri Jul 29 08:58:07 2022 +0800 make code tidy in ConfigNode --- .../org/apache/iotdb/confignode/conf/ConfigNodeConfig.java | 2 +- .../apache/iotdb/confignode/conf/ConfigNodeDescriptor.java | 4 ++-- .../iotdb/confignode/conf/ConfigNodeStartupCheck.java | 4 ++-- .../apache/iotdb/confignode/manager/load/LoadManager.java | 6 +++--- .../confignode/manager/load/balancer/RouteBalancer.java | 6 +++--- .../manager/load/heartbeat/DataNodeHeartbeatCache.java | 4 ++-- .../confignode/manager/load/heartbeat/RegionGroupCache.java | 13 +++++++------ .../service/thrift/ConfigNodeRPCServiceProcessor.java | 6 +++--- .../manager/load/balancer/router/LeaderRouterTest.java | 2 +- 9 files changed, 24 insertions(+), 23 deletions(-) diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeConfig.java b/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeConfig.java index 0761a8369c..fd06fae0c8 100644 --- a/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeConfig.java +++ b/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeConfig.java @@ -143,7 +143,7 @@ public class ConfigNodeConfig { private long heartbeatInterval = 1000; /** The routing policy of read/write requests */ - private String routingPolicy = RouteBalancer.leaderPolicy; + private String routingPolicy = RouteBalancer.LEADER_POLICY; private String readConsistencyLevel = "strong"; diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeDescriptor.java b/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeDescriptor.java index f6a052d558..de92a5bb01 100644 --- a/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeDescriptor.java +++ b/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeDescriptor.java @@ -240,8 +240,8 @@ public class ConfigNodeDescriptor { "heartbeat_interval", String.valueOf(conf.getHeartbeatInterval())))); String routingPolicy = properties.getProperty("routing_policy", conf.getRoutingPolicy()); - if (routingPolicy.equals(RouteBalancer.greedyPolicy) - || routingPolicy.equals(RouteBalancer.leaderPolicy)) { + if (routingPolicy.equals(RouteBalancer.GREEDY_POLICY) + || routingPolicy.equals(RouteBalancer.LEADER_POLICY)) { conf.setRoutingPolicy(routingPolicy); } else { throw new IOException( 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 e145795add..73c1f5ab20 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 @@ -92,8 +92,8 @@ public class ConfigNodeStartupCheck { "%s or %s", ConsensusFactory.StandAloneConsensus, ConsensusFactory.RatisConsensus)); } - if (!conf.getRoutingPolicy().equals(RouteBalancer.leaderPolicy) - && !conf.getRoutingPolicy().equals(RouteBalancer.greedyPolicy)) { + if (!conf.getRoutingPolicy().equals(RouteBalancer.LEADER_POLICY) + && !conf.getRoutingPolicy().equals(RouteBalancer.GREEDY_POLICY)) { throw new ConfigurationException( "routing_policy", conf.getRoutingPolicy(), "leader or greedy"); } diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/LoadManager.java b/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/LoadManager.java index bdc30ec83e..f85ba8196f 100644 --- a/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/LoadManager.java +++ b/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/LoadManager.java @@ -271,7 +271,7 @@ public class LoadManager { .forEach( nodeCache -> { boolean updateResult = nodeCache.updateLoadStatistic(); - if (conf.getRoutingPolicy().equals(RouteBalancer.greedyPolicy) + if (conf.getRoutingPolicy().equals(RouteBalancer.GREEDY_POLICY) && nodeCache instanceof DataNodeHeartbeatCache) { // We need a broadcast when some DataNode fail down isNeedBroadcast.compareAndSet(false, updateResult); @@ -283,7 +283,7 @@ public class LoadManager { .forEach( regionGroupCache -> { boolean updateResult = regionGroupCache.updateLoadStatistic(); - if (conf.getRoutingPolicy().equals(RouteBalancer.leaderPolicy)) { + if (conf.getRoutingPolicy().equals(RouteBalancer.LEADER_POLICY)) { // We need a broadcast when the leadership changed isNeedBroadcast.compareAndSet(false, updateResult); } @@ -416,7 +416,7 @@ public class LoadManager { .collect(Collectors.toList()); } - public void printRegionRouteMap( + public static void printRegionRouteMap( long timestamp, Map<TConsensusGroupId, TRegionReplicaSet> regionRouteMap) { LOGGER.info("[latestRegionRouteMap] timestamp:{}", timestamp); LOGGER.info("[latestRegionRouteMap] RegionRouteMap:"); diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/balancer/RouteBalancer.java b/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/balancer/RouteBalancer.java index 97c6d91952..e36c945803 100644 --- a/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/balancer/RouteBalancer.java +++ b/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/balancer/RouteBalancer.java @@ -36,8 +36,8 @@ import java.util.Map; */ public class RouteBalancer { - public static final String leaderPolicy = "leader"; - public static final String greedyPolicy = "greedy"; + public static final String LEADER_POLICY = "leader"; + public static final String GREEDY_POLICY = "greedy"; private final IManager configManager; @@ -52,7 +52,7 @@ public class RouteBalancer { private IRouter genRouter() { String policy = ConfigNodeDescriptor.getInstance().getConf().getRoutingPolicy(); - if (policy.equals(leaderPolicy)) { + if (policy.equals(LEADER_POLICY)) { return new LeaderRouter( getLoadManager().getAllLeadership(), getLoadManager().getAllLoadScores()); } else { diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/heartbeat/DataNodeHeartbeatCache.java b/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/heartbeat/DataNodeHeartbeatCache.java index 504305f2f9..495cb87682 100644 --- a/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/heartbeat/DataNodeHeartbeatCache.java +++ b/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/heartbeat/DataNodeHeartbeatCache.java @@ -28,7 +28,7 @@ public class DataNodeHeartbeatCache implements INodeCache { // TODO: This class might be split into DataNodeCache and ConfigNodeCache // Cache heartbeat samples - private static final int maximumWindowSize = 100; + private static final int MAXIMUM_WINDOW_SIZE = 100; private final LinkedList<NodeHeartbeatSample> slidingWindow; // For guiding queries, the higher the score the higher the load @@ -53,7 +53,7 @@ public class DataNodeHeartbeatCache implements INodeCache { slidingWindow.add(newHeartbeatSample); } - if (slidingWindow.size() > maximumWindowSize) { + if (slidingWindow.size() > MAXIMUM_WINDOW_SIZE) { slidingWindow.removeFirst(); } } diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/heartbeat/RegionGroupCache.java b/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/heartbeat/RegionGroupCache.java index e325f28929..5001ff76e5 100644 --- a/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/heartbeat/RegionGroupCache.java +++ b/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/heartbeat/RegionGroupCache.java @@ -29,17 +29,18 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; +/** + * TODO: This class might be split into SchemaRegionGroupCache and DataRegionGroupCache + */ public class RegionGroupCache implements IRegionGroupCache { private static final Logger LOGGER = LoggerFactory.getLogger(RegionGroupCache.class); - // TODO: This class might be split into SchemaRegionGroupCache and DataRegionGroupCache - - private static final int maximumWindowSize = 100; - // Map<DataNodeId(where a RegionReplica resides), LinkedList<RegionHeartbeatSample>> + private static final int MAXIMUM_WINDOW_SIZE = 100; private final TConsensusGroupId consensusGroupId; + // Map<DataNodeId(where a RegionReplica resides), LinkedList<RegionHeartbeatSample>> private final Map<Integer, LinkedList<RegionHeartbeatSample>> slidingWindow; // Indicates the version of the statistics @@ -70,7 +71,7 @@ public class RegionGroupCache implements IRegionGroupCache { samples.add(newHeartbeatSample); } - if (samples.size() > maximumWindowSize) { + if (samples.size() > MAXIMUM_WINDOW_SIZE) { samples.removeFirst(); } } @@ -100,7 +101,7 @@ public class RegionGroupCache implements IRegionGroupCache { leaderDataNodeId.set(updateLeaderDataNodeId); } - return !(originLeaderDataNodeId == leaderDataNodeId.get()); + return originLeaderDataNodeId != leaderDataNodeId.get(); } @Override diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/service/thrift/ConfigNodeRPCServiceProcessor.java b/confignode/src/main/java/org/apache/iotdb/confignode/service/thrift/ConfigNodeRPCServiceProcessor.java index c1e5530c71..dbd99bcef5 100644 --- a/confignode/src/main/java/org/apache/iotdb/confignode/service/thrift/ConfigNodeRPCServiceProcessor.java +++ b/confignode/src/main/java/org/apache/iotdb/confignode/service/thrift/ConfigNodeRPCServiceProcessor.java @@ -115,6 +115,8 @@ import java.nio.ByteBuffer; import java.util.Collections; import java.util.List; +import static org.apache.iotdb.confignode.manager.load.LoadManager.printRegionRouteMap; + /** ConfigNodeRPCServer exposes the interface that interacts with the DataNode */ public class ConfigNodeRPCServiceProcessor implements IConfigNodeRPCService.Iface { @@ -537,9 +539,7 @@ public class ConfigNodeRPCServiceProcessor implements IConfigNodeRPCService.Ifac @Override public TRegionRouteMapResp getLatestRegionRouteMap() throws TException { TRegionRouteMapResp resp = configManager.getLatestRegionRouteMap(); - configManager - .getLoadManager() - .printRegionRouteMap(resp.getTimestamp(), resp.getRegionRouteMap()); + printRegionRouteMap(resp.getTimestamp(), resp.getRegionRouteMap()); return resp; } diff --git a/confignode/src/test/java/org/apache/iotdb/confignode/manager/load/balancer/router/LeaderRouterTest.java b/confignode/src/test/java/org/apache/iotdb/confignode/manager/load/balancer/router/LeaderRouterTest.java index be8dc302f2..2a428446a0 100644 --- a/confignode/src/test/java/org/apache/iotdb/confignode/manager/load/balancer/router/LeaderRouterTest.java +++ b/confignode/src/test/java/org/apache/iotdb/confignode/manager/load/balancer/router/LeaderRouterTest.java @@ -43,7 +43,7 @@ import java.util.concurrent.ConcurrentHashMap; public class LeaderRouterTest { @Test - public void genRealTimeRoutingPolicy() { + public void genRealTimeRoutingPolicyTest() { // Build TDataNodeLocations List<TDataNodeLocation> dataNodeLocations = new ArrayList<>(); for (int i = 0; i < 6; i++) {
