From eab1ab97455a3fff1b4f0a7b0072fa7055345775 Mon Sep 17 00:00:00 2001
From: XiChen <32928346+xichen01@users.noreply.github.com>
Date: Mon, 7 Apr 2025 23:17:25 +0800
Subject: [PATCH 1/3] HDDS-12795. Improve Initial heartbeat and first election
time configuration name
---
.../apache/hadoop/hdds/HddsConfigKeys.java | 18 +++++++-------
.../hadoop/hdds/conf/OzoneConfiguration.java | 2 ++
.../apache/hadoop/hdds/scm/ScmConfigKeys.java | 4 ++--
.../apache/hadoop/ozone/OzoneConfigKeys.java | 2 +-
.../src/main/resources/ozone-default.xml | 10 ++++----
.../hadoop/hdds/utils/HddsServerUtil.java | 24 +++++++++----------
.../apache/hadoop/hdds/scm/ha/RatisUtil.java | 2 +-
.../hdds/upgrade/TestScmHAFinalization.java | 2 +-
.../recon/TestReconAndAdminContainerCLI.java | 4 ++--
.../hadoop/ozone/MiniOzoneClusterImpl.java | 2 +-
.../hadoop/ozone/UniformDatanodesFactory.java | 8 +++----
11 files changed, 40 insertions(+), 38 deletions(-)
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java
index c76cafda55c2..9bdea099c609 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java
@@ -27,17 +27,17 @@ public final class HddsConfigKeys {
"hdds.heartbeat.interval";
public static final String HDDS_HEARTBEAT_INTERVAL_DEFAULT =
"30s";
- public static final String HDDS_INITIAL_HEARTBEAT_INTERVAL =
- "hdds.initial.heartbeat.interval";
- public static final String HDDS_INITIAL_HEARTBEAT_INTERVAL_DEFAULT =
+ public static final String HDDS_HEARTBEAT_INTERVAL_INITIAL =
+ "hdds.heartbeat.interval.initial";
+ public static final String HDDS_HEARTBEAT_INTERVAL_INITIAL_DEFAULT =
"2s";
- public static final String HDDS_RECON_HEARTBEAT_INTERVAL =
- "hdds.recon.heartbeat.interval";
- public static final String HDDS_RECON_HEARTBEAT_INTERVAL_DEFAULT =
+ public static final String HDDS_HEARTBEAT_INTERVAL_RECON =
+ "hdds.heartbeat.interval.recon";
+ public static final String HDDS_HEARTBEAT_INTERVAL_RECON_DEFAULT =
"60s";
- public static final String HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL =
- "hdds.recon.initial.heartbeat.interval";
- public static final String HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL_DEFAULT =
+ public static final String HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL =
+ "hdds.heartbeat.interval.recon.initial";
+ public static final String HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL_DEFAULT =
"2s";
public static final String HDDS_NODE_REPORT_INTERVAL =
"hdds.node.report.interval";
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/conf/OzoneConfiguration.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/conf/OzoneConfiguration.java
index 0e11be5477f4..448c7e4099cf 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/conf/OzoneConfiguration.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/conf/OzoneConfiguration.java
@@ -408,6 +408,8 @@ private static void addDeprecatedKeys() {
HddsConfigKeys.HDDS_DATANODE_KERBEROS_KEYTAB_FILE_KEY),
new DeprecationDelta("dfs.metrics.percentiles.intervals",
HddsConfigKeys.HDDS_METRICS_PERCENTILES_INTERVALS_KEY),
+ new DeprecationDelta("hdds.recon.heartbeat.interval",
+ HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_RECON),
});
}
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ScmConfigKeys.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ScmConfigKeys.java
index 34848a9d5f73..966a5759de1a 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ScmConfigKeys.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ScmConfigKeys.java
@@ -636,8 +636,8 @@ public final class ScmConfigKeys {
= "hdds.container.ratis.statemachine.write.wait.interval";
public static final long HDDS_CONTAINER_RATIS_STATEMACHINE_WRITE_WAIT_INTERVAL_NS_DEFAULT = 10 * 60 * 1000_000_000L;
- public static final String OZONE_SCM_HA_RATIS_SERVER_RPC_FIRST_ELECTION_TIMEOUT
- = "ozone.scm.ha.raft.server.rpc.first-election.timeout";
+ public static final String OZONE_SCM_HA_RATIS_LEADER_FIRST_ELECTION_TIMEOUT
+ = "ozone.scm.ha.ratis.leader.first-election.timeout";
/**
* Never constructed.
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/OzoneConfigKeys.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/OzoneConfigKeys.java
index 4db78e644eaf..4943a459bd8a 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/OzoneConfigKeys.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/OzoneConfigKeys.java
@@ -416,7 +416,7 @@ public final class OzoneConfigKeys {
public static final long HDDS_RATIS_SNAPSHOT_THRESHOLD_DEFAULT =
ScmConfigKeys.HDDS_RATIS_SNAPSHOT_THRESHOLD_DEFAULT;
public static final String HDDS_RATIS_LEADER_FIRST_ELECTION_MINIMUM_TIMEOUT_DURATION_KEY =
- "hdds.ratis.leader.first.election.minimum.timeout.duration";
+ "hdds.ratis.leader.first-election.minimum.timeout.duration";
public static final String HDDS_DATANODE_PLUGINS_KEY =
"hdds.datanode.plugins";
diff --git a/hadoop-hdds/common/src/main/resources/ozone-default.xml b/hadoop-hdds/common/src/main/resources/ozone-default.xml
index 7e76cf68c72c..f7b69ed0b066 100644
--- a/hadoop-hdds/common/src/main/resources/ozone-default.xml
+++ b/hadoop-hdds/common/src/main/resources/ozone-default.xml
@@ -348,7 +348,7 @@
- hdds.ratis.leader.first.election.minimum.timeout.duration
+ hdds.ratis.leader.first-election.minimum.timeout.duration
OZONE, RATIS, MANAGEMENT
ratis Minimum timeout for the first election of a leader.
@@ -1163,7 +1163,7 @@
- hdds.initial.heartbeat.interval
+ hdds.heartbeat.interval.initial
2s
OZONE, MANAGEMENT
@@ -1171,7 +1171,7 @@
- hdds.recon.heartbeat.interval
+ hdds.heartbeat.interval.recon
60s
OZONE, MANAGEMENT, RECON
@@ -1179,7 +1179,7 @@
- hdds.recon.initial.heartbeat.interval
+ hdds.heartbeat.interval.recon.initial
60s
OZONE, MANAGEMENT, RECON
@@ -3858,7 +3858,7 @@
election. Default is 1s.
- ozone.scm.ha.raft.server.rpc.first-election.timeout
+ ozone.scm.ha.ratis.leader.first-election.timeout
SCM, OZONE, HA, RATIS
ratis timeout for the first election of a leader.
diff --git a/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HddsServerUtil.java b/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HddsServerUtil.java
index a48a7a33a7da..b6ed17ab78e1 100644
--- a/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HddsServerUtil.java
+++ b/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HddsServerUtil.java
@@ -19,12 +19,12 @@
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL;
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_DEFAULT;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_INITIAL_HEARTBEAT_INTERVAL;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_INITIAL_HEARTBEAT_INTERVAL_DEFAULT;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_RECON_HEARTBEAT_INTERVAL;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_RECON_HEARTBEAT_INTERVAL_DEFAULT;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL_DEFAULT;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_INITIAL;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_INITIAL_DEFAULT;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_RECON;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_RECON_DEFAULT;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL_DEFAULT;
import static org.apache.hadoop.hdds.HddsUtils.getHostNameFromConfigKeys;
import static org.apache.hadoop.hdds.HddsUtils.getPortNumberFromConfigKeys;
import static org.apache.hadoop.hdds.scm.ScmConfigKeys.HDDS_DATANODE_DIR_KEY;
@@ -279,8 +279,8 @@ public static long getScmHeartbeatInterval(ConfigurationSource conf) {
* @return - HB interval in milli seconds.
*/
public static long getScmInitialHeartbeatInterval(ConfigurationSource conf) {
- return conf.getTimeDuration(HDDS_INITIAL_HEARTBEAT_INTERVAL,
- HDDS_INITIAL_HEARTBEAT_INTERVAL_DEFAULT, TimeUnit.MILLISECONDS);
+ return conf.getTimeDuration(HDDS_HEARTBEAT_INTERVAL_INITIAL,
+ HDDS_HEARTBEAT_INTERVAL_INITIAL_DEFAULT, TimeUnit.MILLISECONDS);
}
/**
@@ -291,8 +291,8 @@ public static long getScmInitialHeartbeatInterval(ConfigurationSource conf) {
* @return - HB interval in milli seconds.
*/
public static long getReconHeartbeatInterval(ConfigurationSource conf) {
- return conf.getTimeDuration(HDDS_RECON_HEARTBEAT_INTERVAL,
- HDDS_RECON_HEARTBEAT_INTERVAL_DEFAULT, TimeUnit.MILLISECONDS);
+ return conf.getTimeDuration(HDDS_HEARTBEAT_INTERVAL_RECON,
+ HDDS_HEARTBEAT_INTERVAL_RECON_DEFAULT, TimeUnit.MILLISECONDS);
}
/**
@@ -303,8 +303,8 @@ public static long getReconHeartbeatInterval(ConfigurationSource conf) {
* @return - HB interval in milli seconds.
*/
public static long getInitialReconHeartbeatInterval(ConfigurationSource conf) {
- return conf.getTimeDuration(HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL,
- HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL_DEFAULT, TimeUnit.MILLISECONDS);
+ return conf.getTimeDuration(HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL,
+ HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL_DEFAULT, TimeUnit.MILLISECONDS);
}
/**
diff --git a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/RatisUtil.java b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/RatisUtil.java
index 456d020f9fb8..cb1402ccd151 100644
--- a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/RatisUtil.java
+++ b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/RatisUtil.java
@@ -139,7 +139,7 @@ private static void setRaftRpcProperties(final RaftProperties properties,
TimeUnit.MILLISECONDS),
TimeUnit.MILLISECONDS));
RatisHelper.setFirstElectionTimeoutDuration(
- ozoneConf, properties, ScmConfigKeys.OZONE_SCM_HA_RATIS_SERVER_RPC_FIRST_ELECTION_TIMEOUT);
+ ozoneConf, properties, ScmConfigKeys.OZONE_SCM_HA_RATIS_LEADER_FIRST_ELECTION_TIMEOUT);
}
/**
diff --git a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmHAFinalization.java b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmHAFinalization.java
index 1d24c559c56a..8c67b37fd80d 100644
--- a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmHAFinalization.java
+++ b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmHAFinalization.java
@@ -88,7 +88,7 @@ public void init(OzoneConfiguration conf,
configurator.setUpgradeFinalizationExecutor(executor);
conf.setInt(HDDS_SCM_INIT_DEFAULT_LAYOUT_VERSION, HDDSLayoutFeature.INITIAL_VERSION.layoutVersion());
- conf.set(ScmConfigKeys.OZONE_SCM_HA_RATIS_SERVER_RPC_FIRST_ELECTION_TIMEOUT, "5s");
+ conf.set(ScmConfigKeys.OZONE_SCM_HA_RATIS_LEADER_FIRST_ELECTION_TIMEOUT, "5s");
MiniOzoneHAClusterImpl.Builder clusterBuilder = MiniOzoneCluster.newHABuilder(conf);
clusterBuilder.setNumOfStorageContainerManagers(NUM_SCMS)
diff --git a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/recon/TestReconAndAdminContainerCLI.java b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/recon/TestReconAndAdminContainerCLI.java
index 2ce2a18691e4..1e4235f173d6 100644
--- a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/recon/TestReconAndAdminContainerCLI.java
+++ b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/recon/TestReconAndAdminContainerCLI.java
@@ -23,9 +23,9 @@
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_COMMAND_STATUS_REPORT_INTERVAL;
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_CONTAINER_REPORT_INTERVAL;
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_RECON;
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_NODE_REPORT_INTERVAL;
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_PIPELINE_REPORT_INTERVAL;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_RECON_HEARTBEAT_INTERVAL;
import static org.apache.hadoop.hdds.protocol.proto.HddsProtos.NodeOperationalState.IN_SERVICE;
import static org.apache.hadoop.hdds.scm.ScmConfigKeys.OZONE_SCM_DATANODE_ADMIN_MONITOR_INTERVAL;
import static org.apache.hadoop.hdds.scm.ScmConfigKeys.OZONE_SCM_DEADNODE_INTERVAL;
@@ -466,7 +466,7 @@ private static void setupConfigKeys() {
CONF.set(ScmConfigKeys.OZONE_SCM_PIPELINE_SCRUB_INTERVAL, "2s");
CONF.set(ScmConfigKeys.OZONE_SCM_PIPELINE_DESTROY_TIMEOUT, "5s");
- CONF.setTimeDuration(HDDS_RECON_HEARTBEAT_INTERVAL,
+ CONF.setTimeDuration(HDDS_HEARTBEAT_INTERVAL_RECON,
1, TimeUnit.SECONDS);
CONF.setTimeDuration(OZONE_RECON_OM_SNAPSHOT_TASK_INTERVAL_DELAY,
1, TimeUnit.SECONDS);
diff --git a/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/MiniOzoneClusterImpl.java b/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/MiniOzoneClusterImpl.java
index cef2724de2a5..b607a34aedfa 100644
--- a/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/MiniOzoneClusterImpl.java
+++ b/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/MiniOzoneClusterImpl.java
@@ -774,7 +774,7 @@ protected void configureSCM() {
"3s");
conf.setInt(ScmConfigKeys.OZONE_SCM_RATIS_PORT_KEY, getFreePort());
conf.setInt(ScmConfigKeys.OZONE_SCM_GRPC_PORT_KEY, getFreePort());
- conf.setIfUnset(ScmConfigKeys.OZONE_SCM_HA_RATIS_SERVER_RPC_FIRST_ELECTION_TIMEOUT, "1s");
+ conf.setIfUnset(ScmConfigKeys.OZONE_SCM_HA_RATIS_LEADER_FIRST_ELECTION_TIMEOUT, "1s");
}
private void configureOM() {
diff --git a/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/UniformDatanodesFactory.java b/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/UniformDatanodesFactory.java
index fed26e641389..18508a134873 100644
--- a/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/UniformDatanodesFactory.java
+++ b/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/UniformDatanodesFactory.java
@@ -19,8 +19,8 @@
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_DATANODE_CLIENT_ADDRESS_KEY;
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_DATANODE_HTTP_ADDRESS_KEY;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_INITIAL_HEARTBEAT_INTERVAL;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_INITIAL;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL;
import static org.apache.hadoop.hdds.HddsConfigKeys.OZONE_METADATA_DIRS;
import static org.apache.hadoop.hdds.scm.ScmConfigKeys.HDDS_DATANODE_DIR_DU_RESERVED;
import static org.apache.hadoop.hdds.scm.ScmConfigKeys.HDDS_DATANODE_DIR_KEY;
@@ -118,8 +118,8 @@ public OzoneConfiguration apply(OzoneConfiguration conf) throws IOException {
dnConf.setInt(TESTING_DATANODE_VERSION_CURRENT, currentVersion.toProtoValue());
}
dnConf.set(HDDS_RATIS_LEADER_FIRST_ELECTION_MINIMUM_TIMEOUT_DURATION_KEY, "1s");
- dnConf.set(HDDS_INITIAL_HEARTBEAT_INTERVAL, "500ms");
- dnConf.set(HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL, "500ms");
+ dnConf.set(HDDS_HEARTBEAT_INTERVAL_INITIAL, "500ms");
+ dnConf.set(HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL, "500ms");
return dnConf;
}
From dd25c94ec22e42bc7942120e7ea85965e7b6d38f Mon Sep 17 00:00:00 2001
From: "Doroszlai, Attila"
Date: Mon, 28 Apr 2025 13:34:45 +0200
Subject: [PATCH 2/3] keep original constant names
---
.../apache/hadoop/hdds/HddsConfigKeys.java | 12 +++++-----
.../hadoop/hdds/conf/OzoneConfiguration.java | 2 +-
.../apache/hadoop/hdds/scm/ScmConfigKeys.java | 2 +-
.../hadoop/hdds/utils/HddsServerUtil.java | 24 +++++++++----------
.../apache/hadoop/hdds/scm/ha/RatisUtil.java | 2 +-
.../hdds/upgrade/TestScmHAFinalization.java | 2 +-
.../recon/TestReconAndAdminContainerCLI.java | 4 ++--
.../hadoop/ozone/MiniOzoneClusterImpl.java | 2 +-
.../hadoop/ozone/UniformDatanodesFactory.java | 8 +++----
9 files changed, 29 insertions(+), 29 deletions(-)
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java
index 99abd469a6c2..76ab889e566e 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java
@@ -27,17 +27,17 @@ public final class HddsConfigKeys {
"hdds.heartbeat.interval";
public static final String HDDS_HEARTBEAT_INTERVAL_DEFAULT =
"30s";
- public static final String HDDS_HEARTBEAT_INTERVAL_INITIAL =
+ public static final String HDDS_INITIAL_HEARTBEAT_INTERVAL =
"hdds.heartbeat.interval.initial";
- public static final String HDDS_HEARTBEAT_INTERVAL_INITIAL_DEFAULT =
+ public static final String HDDS_INITIAL_HEARTBEAT_INTERVAL_DEFAULT =
"2s";
- public static final String HDDS_HEARTBEAT_INTERVAL_RECON =
+ public static final String HDDS_RECON_HEARTBEAT_INTERVAL =
"hdds.heartbeat.interval.recon";
- public static final String HDDS_HEARTBEAT_INTERVAL_RECON_DEFAULT =
+ public static final String HDDS_RECON_HEARTBEAT_INTERVAL_DEFAULT =
"60s";
- public static final String HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL =
+ public static final String HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL =
"hdds.heartbeat.interval.recon.initial";
- public static final String HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL_DEFAULT =
+ public static final String HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL_DEFAULT =
"2s";
public static final String HDDS_NODE_REPORT_INTERVAL =
"hdds.node.report.interval";
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/conf/OzoneConfiguration.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/conf/OzoneConfiguration.java
index d9a129a7c3b2..6959641c84f4 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/conf/OzoneConfiguration.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/conf/OzoneConfiguration.java
@@ -410,7 +410,7 @@ private static void addDeprecatedKeys() {
new DeprecationDelta("dfs.metrics.percentiles.intervals",
HddsConfigKeys.HDDS_METRICS_PERCENTILES_INTERVALS_KEY),
new DeprecationDelta("hdds.recon.heartbeat.interval",
- HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_RECON),
+ HddsConfigKeys.HDDS_RECON_HEARTBEAT_INTERVAL),
});
}
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ScmConfigKeys.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ScmConfigKeys.java
index 23b6988187b3..090382be15e7 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ScmConfigKeys.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ScmConfigKeys.java
@@ -625,7 +625,7 @@ public final class ScmConfigKeys {
= "hdds.container.ratis.statemachine.write.wait.interval";
public static final long HDDS_CONTAINER_RATIS_STATEMACHINE_WRITE_WAIT_INTERVAL_NS_DEFAULT = 10 * 60 * 1000_000_000L;
- public static final String OZONE_SCM_HA_RATIS_LEADER_FIRST_ELECTION_TIMEOUT
+ public static final String OZONE_SCM_HA_RATIS_SERVER_RPC_FIRST_ELECTION_TIMEOUT
= "ozone.scm.ha.ratis.leader.first-election.timeout";
/**
diff --git a/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HddsServerUtil.java b/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HddsServerUtil.java
index 1e7f6e715e18..9a780be8b3d4 100644
--- a/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HddsServerUtil.java
+++ b/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/HddsServerUtil.java
@@ -19,12 +19,12 @@
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL;
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_DEFAULT;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_INITIAL;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_INITIAL_DEFAULT;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_RECON;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_RECON_DEFAULT;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL_DEFAULT;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_INITIAL_HEARTBEAT_INTERVAL;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_INITIAL_HEARTBEAT_INTERVAL_DEFAULT;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_RECON_HEARTBEAT_INTERVAL;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_RECON_HEARTBEAT_INTERVAL_DEFAULT;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL_DEFAULT;
import static org.apache.hadoop.hdds.HddsUtils.getHostNameFromConfigKeys;
import static org.apache.hadoop.hdds.HddsUtils.getPortNumberFromConfigKeys;
import static org.apache.hadoop.hdds.scm.ScmConfigKeys.HDDS_DATANODE_DIR_KEY;
@@ -275,8 +275,8 @@ public static long getScmHeartbeatInterval(ConfigurationSource conf) {
* @return - HB interval in milli seconds.
*/
public static long getScmInitialHeartbeatInterval(ConfigurationSource conf) {
- return conf.getTimeDuration(HDDS_HEARTBEAT_INTERVAL_INITIAL,
- HDDS_HEARTBEAT_INTERVAL_INITIAL_DEFAULT, TimeUnit.MILLISECONDS);
+ return conf.getTimeDuration(HDDS_INITIAL_HEARTBEAT_INTERVAL,
+ HDDS_INITIAL_HEARTBEAT_INTERVAL_DEFAULT, TimeUnit.MILLISECONDS);
}
/**
@@ -287,8 +287,8 @@ public static long getScmInitialHeartbeatInterval(ConfigurationSource conf) {
* @return - HB interval in milli seconds.
*/
public static long getReconHeartbeatInterval(ConfigurationSource conf) {
- return conf.getTimeDuration(HDDS_HEARTBEAT_INTERVAL_RECON,
- HDDS_HEARTBEAT_INTERVAL_RECON_DEFAULT, TimeUnit.MILLISECONDS);
+ return conf.getTimeDuration(HDDS_RECON_HEARTBEAT_INTERVAL,
+ HDDS_RECON_HEARTBEAT_INTERVAL_DEFAULT, TimeUnit.MILLISECONDS);
}
/**
@@ -299,8 +299,8 @@ public static long getReconHeartbeatInterval(ConfigurationSource conf) {
* @return - HB interval in milli seconds.
*/
public static long getInitialReconHeartbeatInterval(ConfigurationSource conf) {
- return conf.getTimeDuration(HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL,
- HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL_DEFAULT, TimeUnit.MILLISECONDS);
+ return conf.getTimeDuration(HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL,
+ HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL_DEFAULT, TimeUnit.MILLISECONDS);
}
/**
diff --git a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/RatisUtil.java b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/RatisUtil.java
index 46111df90c0f..a482ae34f239 100644
--- a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/RatisUtil.java
+++ b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/RatisUtil.java
@@ -138,7 +138,7 @@ private static void setRaftRpcProperties(final RaftProperties properties,
TimeUnit.MILLISECONDS),
TimeUnit.MILLISECONDS));
RatisHelper.setFirstElectionTimeoutDuration(
- ozoneConf, properties, ScmConfigKeys.OZONE_SCM_HA_RATIS_LEADER_FIRST_ELECTION_TIMEOUT);
+ ozoneConf, properties, ScmConfigKeys.OZONE_SCM_HA_RATIS_SERVER_RPC_FIRST_ELECTION_TIMEOUT);
}
/**
diff --git a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmHAFinalization.java b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmHAFinalization.java
index 0c8f3b4be810..bebddd34877d 100644
--- a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmHAFinalization.java
+++ b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/TestScmHAFinalization.java
@@ -89,7 +89,7 @@ public void init(OzoneConfiguration conf,
configurator.setUpgradeFinalizationExecutor(executor);
conf.setInt(HDDS_SCM_INIT_DEFAULT_LAYOUT_VERSION, HDDSLayoutFeature.INITIAL_VERSION.layoutVersion());
- conf.set(ScmConfigKeys.OZONE_SCM_HA_RATIS_LEADER_FIRST_ELECTION_TIMEOUT, "5s");
+ conf.set(ScmConfigKeys.OZONE_SCM_HA_RATIS_SERVER_RPC_FIRST_ELECTION_TIMEOUT, "5s");
MiniOzoneHAClusterImpl.Builder clusterBuilder = MiniOzoneCluster.newHABuilder(conf);
clusterBuilder.setNumOfStorageContainerManagers(NUM_SCMS)
diff --git a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/recon/TestReconAndAdminContainerCLI.java b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/recon/TestReconAndAdminContainerCLI.java
index 2eb298d45ad1..3f7ea803775e 100644
--- a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/recon/TestReconAndAdminContainerCLI.java
+++ b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/recon/TestReconAndAdminContainerCLI.java
@@ -22,9 +22,9 @@
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_COMMAND_STATUS_REPORT_INTERVAL;
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_CONTAINER_REPORT_INTERVAL;
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_RECON;
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_NODE_REPORT_INTERVAL;
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_PIPELINE_REPORT_INTERVAL;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_RECON_HEARTBEAT_INTERVAL;
import static org.apache.hadoop.hdds.protocol.proto.HddsProtos.NodeOperationalState.IN_SERVICE;
import static org.apache.hadoop.hdds.scm.ScmConfigKeys.OZONE_SCM_DATANODE_ADMIN_MONITOR_INTERVAL;
import static org.apache.hadoop.hdds.scm.ScmConfigKeys.OZONE_SCM_DEADNODE_INTERVAL;
@@ -461,7 +461,7 @@ private static void setupConfigKeys() {
CONF.set(ScmConfigKeys.OZONE_SCM_PIPELINE_SCRUB_INTERVAL, "2s");
CONF.set(ScmConfigKeys.OZONE_SCM_PIPELINE_DESTROY_TIMEOUT, "5s");
- CONF.setTimeDuration(HDDS_HEARTBEAT_INTERVAL_RECON,
+ CONF.setTimeDuration(HDDS_RECON_HEARTBEAT_INTERVAL,
1, TimeUnit.SECONDS);
CONF.setTimeDuration(OZONE_RECON_OM_SNAPSHOT_TASK_INTERVAL_DELAY,
1, TimeUnit.SECONDS);
diff --git a/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/MiniOzoneClusterImpl.java b/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/MiniOzoneClusterImpl.java
index 0e38cf7c60e1..ef097ab57995 100644
--- a/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/MiniOzoneClusterImpl.java
+++ b/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/MiniOzoneClusterImpl.java
@@ -774,7 +774,7 @@ protected void configureSCM() {
"3s");
conf.setInt(ScmConfigKeys.OZONE_SCM_RATIS_PORT_KEY, getFreePort());
conf.setInt(ScmConfigKeys.OZONE_SCM_GRPC_PORT_KEY, getFreePort());
- conf.setIfUnset(ScmConfigKeys.OZONE_SCM_HA_RATIS_LEADER_FIRST_ELECTION_TIMEOUT, "1s");
+ conf.setIfUnset(ScmConfigKeys.OZONE_SCM_HA_RATIS_SERVER_RPC_FIRST_ELECTION_TIMEOUT, "1s");
}
private void configureOM() {
diff --git a/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/UniformDatanodesFactory.java b/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/UniformDatanodesFactory.java
index bccc49183fed..771d2b190ce3 100644
--- a/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/UniformDatanodesFactory.java
+++ b/hadoop-ozone/mini-cluster/src/main/java/org/apache/hadoop/ozone/UniformDatanodesFactory.java
@@ -19,8 +19,8 @@
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_DATANODE_CLIENT_ADDRESS_KEY;
import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_DATANODE_HTTP_ADDRESS_KEY;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_INITIAL;
-import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_INITIAL_HEARTBEAT_INTERVAL;
+import static org.apache.hadoop.hdds.HddsConfigKeys.HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL;
import static org.apache.hadoop.hdds.HddsConfigKeys.OZONE_METADATA_DIRS;
import static org.apache.hadoop.hdds.scm.ScmConfigKeys.HDDS_DATANODE_DIR_DU_RESERVED;
import static org.apache.hadoop.hdds.scm.ScmConfigKeys.HDDS_DATANODE_DIR_KEY;
@@ -117,8 +117,8 @@ public OzoneConfiguration apply(OzoneConfiguration conf) throws IOException {
dnConf.setInt(TESTING_DATANODE_VERSION_CURRENT, currentVersion.toProtoValue());
}
dnConf.set(HDDS_RATIS_LEADER_FIRST_ELECTION_MINIMUM_TIMEOUT_DURATION_KEY, "1s");
- dnConf.set(HDDS_HEARTBEAT_INTERVAL_INITIAL, "500ms");
- dnConf.set(HDDS_HEARTBEAT_INTERVAL_RECON_INITIAL, "500ms");
+ dnConf.set(HDDS_INITIAL_HEARTBEAT_INTERVAL, "500ms");
+ dnConf.set(HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL, "500ms");
return dnConf;
}
From 7b6d8fe29212f9b783436e10f8ad6604e602c91e Mon Sep 17 00:00:00 2001
From: "Doroszlai, Attila"
Date: Thu, 1 May 2025 19:38:41 +0200
Subject: [PATCH 3/3] apply suggestion from review
---
.../java/org/apache/hadoop/hdds/HddsConfigKeys.java | 6 +++---
.../java/org/apache/hadoop/hdds/scm/ScmConfigKeys.java | 2 +-
.../java/org/apache/hadoop/ozone/OzoneConfigKeys.java | 2 +-
.../common/src/main/resources/ozone-default.xml | 10 +++++-----
4 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java
index 76ab889e566e..22c6cfb7facd 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/HddsConfigKeys.java
@@ -28,15 +28,15 @@ public final class HddsConfigKeys {
public static final String HDDS_HEARTBEAT_INTERVAL_DEFAULT =
"30s";
public static final String HDDS_INITIAL_HEARTBEAT_INTERVAL =
- "hdds.heartbeat.interval.initial";
+ "hdds.heartbeat.initial-interval";
public static final String HDDS_INITIAL_HEARTBEAT_INTERVAL_DEFAULT =
"2s";
public static final String HDDS_RECON_HEARTBEAT_INTERVAL =
- "hdds.heartbeat.interval.recon";
+ "hdds.heartbeat.recon.interval";
public static final String HDDS_RECON_HEARTBEAT_INTERVAL_DEFAULT =
"60s";
public static final String HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL =
- "hdds.heartbeat.interval.recon.initial";
+ "hdds.heartbeat.recon.initial-interval";
public static final String HDDS_RECON_INITIAL_HEARTBEAT_INTERVAL_DEFAULT =
"2s";
public static final String HDDS_NODE_REPORT_INTERVAL =
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ScmConfigKeys.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ScmConfigKeys.java
index 090382be15e7..44229338ec64 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ScmConfigKeys.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/ScmConfigKeys.java
@@ -626,7 +626,7 @@ public final class ScmConfigKeys {
public static final long HDDS_CONTAINER_RATIS_STATEMACHINE_WRITE_WAIT_INTERVAL_NS_DEFAULT = 10 * 60 * 1000_000_000L;
public static final String OZONE_SCM_HA_RATIS_SERVER_RPC_FIRST_ELECTION_TIMEOUT
- = "ozone.scm.ha.ratis.leader.first-election.timeout";
+ = "ozone.scm.ha.raft.server.rpc.first-election.timeout";
/**
* Never constructed.
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/OzoneConfigKeys.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/OzoneConfigKeys.java
index 9d508cc97f35..dbb913668833 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/OzoneConfigKeys.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/OzoneConfigKeys.java
@@ -406,7 +406,7 @@ public final class OzoneConfigKeys {
public static final long HDDS_RATIS_SNAPSHOT_THRESHOLD_DEFAULT =
ScmConfigKeys.HDDS_RATIS_SNAPSHOT_THRESHOLD_DEFAULT;
public static final String HDDS_RATIS_LEADER_FIRST_ELECTION_MINIMUM_TIMEOUT_DURATION_KEY =
- "hdds.ratis.leader.first-election.minimum.timeout.duration";
+ "hdds.raft.server.rpc.first-election.timeout";
public static final String HDDS_DATANODE_PLUGINS_KEY =
"hdds.datanode.plugins";
diff --git a/hadoop-hdds/common/src/main/resources/ozone-default.xml b/hadoop-hdds/common/src/main/resources/ozone-default.xml
index dd1988507da9..b250771f815d 100644
--- a/hadoop-hdds/common/src/main/resources/ozone-default.xml
+++ b/hadoop-hdds/common/src/main/resources/ozone-default.xml
@@ -339,7 +339,7 @@
- hdds.ratis.leader.first-election.minimum.timeout.duration
+ hdds.raft.server.rpc.first-election.timeout
OZONE, RATIS, MANAGEMENT
ratis Minimum timeout for the first election of a leader.
@@ -1154,7 +1154,7 @@
- hdds.heartbeat.interval.initial
+ hdds.heartbeat.initial-interval
2s
OZONE, MANAGEMENT
@@ -1162,7 +1162,7 @@
- hdds.heartbeat.interval.recon
+ hdds.heartbeat.recon.interval
60s
OZONE, MANAGEMENT, RECON
@@ -1170,7 +1170,7 @@
- hdds.heartbeat.interval.recon.initial
+ hdds.heartbeat.recon.initial-interval
60s
OZONE, MANAGEMENT, RECON
@@ -3881,7 +3881,7 @@
election. Default is 1s.
- ozone.scm.ha.ratis.leader.first-election.timeout
+ ozone.scm.ha.raft.server.rpc.first-election.timeout
SCM, OZONE, HA, RATIS
ratis timeout for the first election of a leader.