From 2f3b72786d0a7c5166f6c21913fe221927784c83 Mon Sep 17 00:00:00 2001 From: Ethan Rose Date: Fri, 24 Jul 2026 13:05:06 -0400 Subject: [PATCH 1/2] Remove safemode requirement from test finalize check (cherry picked from commit dddf5c6b04703f3bea7dc70f0887f3a1a0551395) --- .../org/apache/hadoop/hdds/upgrade/HddsUpgradeTestUtils.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/HddsUpgradeTestUtils.java b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/HddsUpgradeTestUtils.java index 3f735828b4c5..029930fce628 100644 --- a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/HddsUpgradeTestUtils.java +++ b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/HddsUpgradeTestUtils.java @@ -143,6 +143,8 @@ private static boolean isScmFinalized(StorageContainerManager scm, boolean waitF "Requiring DB key to flush? {}", scm.getSCMNodeId(), scm.checkLeader(), exitedSafemode, isFinalized, dbKeyFlushed, waitForDBKeyFlush); - return exitedSafemode && isFinalized && (!waitForDBKeyFlush || dbKeyFlushed); + // Safemode status is included for logging purposes, but is not required for SCM to finalize. + // If the leader is out of safemode, it can instruct followers still in safemode to finalize over Ratis. + return isFinalized && (!waitForDBKeyFlush || dbKeyFlushed); } } From b75bc6a2b2ed1b9ac67b7bf31a7a09ca63e73873 Mon Sep 17 00:00:00 2001 From: Ethan Rose Date: Fri, 24 Jul 2026 13:51:21 -0400 Subject: [PATCH 2/2] Update comment --- .../org/apache/hadoop/hdds/upgrade/HddsUpgradeTestUtils.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/HddsUpgradeTestUtils.java b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/HddsUpgradeTestUtils.java index 029930fce628..a63fbf1d1043 100644 --- a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/HddsUpgradeTestUtils.java +++ b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/upgrade/HddsUpgradeTestUtils.java @@ -143,8 +143,7 @@ private static boolean isScmFinalized(StorageContainerManager scm, boolean waitF "Requiring DB key to flush? {}", scm.getSCMNodeId(), scm.checkLeader(), exitedSafemode, isFinalized, dbKeyFlushed, waitForDBKeyFlush); - // Safemode status is included for logging purposes, but is not required for SCM to finalize. - // If the leader is out of safemode, it can instruct followers still in safemode to finalize over Ratis. + // Safemode exit status is included for logging purposes, but SCMs can still finalize while in safemode. return isFinalized && (!waitForDBKeyFlush || dbKeyFlushed); } }