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

Gargi-jais11 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ozone.git


The following commit(s) were added to refs/heads/master by this push:
     new 8d0fc9cc687 HDDS-15490. [DiskBalancer] Align batch CLI success 
messages with HEALTHY IN_SERVICE datanode selection. (#10457).
8d0fc9cc687 is described below

commit 8d0fc9cc687244b2af1cd65bfb1cb03962ed6db1
Author: slfan1989 <[email protected]>
AuthorDate: Wed Jun 10 12:15:14 2026 +0800

    HDDS-15490. [DiskBalancer] Align batch CLI success messages with HEALTHY 
IN_SERVICE datanode selection. (#10457).
---
 hadoop-hdds/docs/content/design/diskbalancer.md                |  4 ++--
 .../hadoop/hdds/scm/cli/datanode/DiskBalancerCommands.java     | 10 +++++-----
 .../hdds/scm/cli/datanode/DiskBalancerStartSubcommand.java     |  2 +-
 .../hdds/scm/cli/datanode/DiskBalancerStopSubcommand.java      |  2 +-
 .../hdds/scm/cli/datanode/DiskBalancerSubCommandUtil.java      |  2 +-
 .../hdds/scm/cli/datanode/DiskBalancerUpdateSubcommand.java    |  2 +-
 .../hdds/scm/cli/datanode/TestDiskBalancerSubCommands.java     |  6 +++---
 .../src/main/smoketest/diskbalancer/testdiskbalancer.robot     |  6 +++---
 8 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/hadoop-hdds/docs/content/design/diskbalancer.md 
b/hadoop-hdds/docs/content/design/diskbalancer.md
index 98d206bfb7f..05ed92e77be 100644
--- a/hadoop-hdds/docs/content/design/diskbalancer.md
+++ b/hadoop-hdds/docs/content/design/diskbalancer.md
@@ -69,7 +69,7 @@ Administrators use the `ozone admin datanode diskbalancer` 
CLI to manage and mon
   - Update configuration parameters
   - Query DiskBalancer status and volume density reports
 * Each datanode performs its own **authentication** (via RPC) and 
**authorization** checks (using `OzoneAdmins` based on `ozone.administrators` 
configuration).
-* For batch operations, clients can use the `--in-service-datanodes` flag to 
automatically query SCM for all IN_SERVICE datanodes and execute commands on 
all of them.
+* For batch operations, clients can use the `--in-service-datanodes` flag to 
automatically query SCM for all IN_SERVICE and HEALTHY datanodes and execute 
commands on all of them.
 
 **DN - DiskBalancer Service:**
 
@@ -81,7 +81,7 @@ A daemon thread, the **Scheduler**, runs periodically on each 
Datanode.
 from the most over-utilized disk (source) to the least utilized disk 
(destination).
 3.  The scheduler dispatches these move tasks to a pool of **Worker** threads 
for parallel execution.
 
-**Note:** SCM is used **only** for datanode discovery when using the 
`--in-service-datanodes` flag. SCM provides a list of IN_SERVICE datanodes for 
batch operations but
+**Note:** SCM is used **only** for datanode discovery when using the 
`--in-service-datanodes` flag. SCM provides a list of IN_SERVICE and HEALTHY 
datanodes for batch operations but
 does **not** participate in DiskBalancer control operations 
(start/stop/update/status/report). All DiskBalancer operations are performed 
directly between client and datanode.
 
 ## Container Move Process
diff --git 
a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerCommands.java
 
b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerCommands.java
index 775f86c6848..88c48244dda 100644
--- 
a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerCommands.java
+++ 
b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerCommands.java
@@ -35,9 +35,9 @@
  *      [--in-service-datanodes]   Send requests to all available DataNodes in 
HEALTHY
  *                                  and IN_SERVICE operational state. When 
this option
  *                                  is used, specific datanode addresses are 
not required.
- *                                  Note: Commands will only be sent to 
IN_SERVICE datanodes,
- *                                  excluding DECOMMISSIONING, DECOMMISSIONED, 
and nodes
- *                                  in maintenance states.
+ *                                  Note: Commands will only be sent to 
HEALTHY datanodes
+ *                                  in IN_SERVICE operational state, excluding 
non-HEALTHY,
+ *                                  DECOMMISSIONING, DECOMMISSIONED, and nodes 
in maintenance states.
  *
  * To start:
  *      ozone admin datanode diskbalancer start {@literal <host[:port]>} 
[{@literal <host[:port]>} ...]
@@ -77,7 +77,7 @@
  *        Start balancer on all IN_SERVICE and HEALTHY datanodes
  *
  *      ozone admin datanode diskbalancer start --in-service-datanodes --json
- *        Start balancer on all IN_SERVICE datanodes and output results in 
JSON format
+ *        Start balancer on all IN_SERVICE and HEALTHY datanodes and output 
results in JSON format
  *
  * To stop:
  *      ozone admin datanode diskbalancer stop {@literal <host[:port]>} 
[{@literal <host[:port]>} ...]
@@ -111,7 +111,7 @@
  *        Update diskbalancer threshold to 10% on DN-1
  *
  *      ozone admin datanode diskbalancer update --in-service-datanodes -t 10
- *        Update diskbalancer threshold to 10% on all IN_SERVICE datanodes
+ *        Update diskbalancer threshold to 10% on all IN_SERVICE and HEALTHY 
datanodes
  *
  *      ozone admin datanode diskbalancer update DN-1 -t 10 --json
  *        Update diskbalancer threshold to 10% on DN-1 and output result in 
JSON format
diff --git 
a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerStartSubcommand.java
 
b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerStartSubcommand.java
index b4ee90a15ec..bde873bac45 100644
--- 
a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerStartSubcommand.java
+++ 
b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerStartSubcommand.java
@@ -123,7 +123,7 @@ protected void displayResults(List<String> successNodes,
                 .map(this::formatDatanodeDisplayName)
                 .collect(toList())));
       } else {
-        System.out.println("Started DiskBalancer on all IN_SERVICE nodes.");
+        System.out.println("Started DiskBalancer on all IN_SERVICE and HEALTHY 
nodes.");
       }
     } else {
       // Detailed message for specific nodes
diff --git 
a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerStopSubcommand.java
 
b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerStopSubcommand.java
index dcb79480756..24ffd62aa73 100644
--- 
a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerStopSubcommand.java
+++ 
b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerStopSubcommand.java
@@ -69,7 +69,7 @@ protected void displayResults(List<String> successNodes, 
List<String> failedNode
                 .map(this::formatDatanodeDisplayName)
                 .collect(toList())));
       } else {
-        System.out.println("Stopped DiskBalancer on all IN_SERVICE nodes.");
+        System.out.println("Stopped DiskBalancer on all IN_SERVICE and HEALTHY 
nodes.");
       }
     } else {
       // Detailed message for specific nodes
diff --git 
a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerSubCommandUtil.java
 
b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerSubCommandUtil.java
index 3f3fb16331c..09d8cf5e02c 100644
--- 
a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerSubCommandUtil.java
+++ 
b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerSubCommandUtil.java
@@ -75,7 +75,7 @@ public static DiskBalancerProtocol 
getSingleNodeDiskBalancerProxy(
   }
 
   /**
-   * Retrieves all IN_SERVICE datanode addresses with their hostnames from SCM.
+   * Retrieves all IN_SERVICE and HEALTHY datanode addresses with their 
hostnames from SCM.
    * Used for batch operations with --in-service-datanodes flag.
    *
    * @param scmClient the SCM client
diff --git 
a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerUpdateSubcommand.java
 
b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerUpdateSubcommand.java
index 3a550b49380..6a899f5c633 100644
--- 
a/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerUpdateSubcommand.java
+++ 
b/hadoop-ozone/cli-admin/src/main/java/org/apache/hadoop/hdds/scm/cli/datanode/DiskBalancerUpdateSubcommand.java
@@ -133,7 +133,7 @@ protected void displayResults(List<String> successNodes,
                 .map(this::formatDatanodeDisplayName)
                 .collect(toList())));
       } else {
-        System.out.println("Updated DiskBalancer configuration on all 
IN_SERVICE nodes.");
+        System.out.println("Updated DiskBalancer configuration on all 
IN_SERVICE and HEALTHY nodes.");
       }
     } else {
       // Detailed message for specific nodes
diff --git 
a/hadoop-ozone/cli-admin/src/test/java/org/apache/hadoop/hdds/scm/cli/datanode/TestDiskBalancerSubCommands.java
 
b/hadoop-ozone/cli-admin/src/test/java/org/apache/hadoop/hdds/scm/cli/datanode/TestDiskBalancerSubCommands.java
index bd7a079eda7..d7133a3216a 100644
--- 
a/hadoop-ozone/cli-admin/src/test/java/org/apache/hadoop/hdds/scm/cli/datanode/TestDiskBalancerSubCommands.java
+++ 
b/hadoop-ozone/cli-admin/src/test/java/org/apache/hadoop/hdds/scm/cli/datanode/TestDiskBalancerSubCommands.java
@@ -192,7 +192,7 @@ public void testStartDiskBalancerWithInServiceDatanodes() 
throws Exception {
 
       String output = outContent.toString(DEFAULT_ENCODING);
 
-      Pattern p = Pattern.compile("Started DiskBalancer on all IN_SERVICE 
nodes\\.");
+      Pattern p = Pattern.compile("Started DiskBalancer on all IN_SERVICE and 
HEALTHY nodes\\.");
       Matcher m = p.matcher(output);
       assertTrue(m.find());
     }
@@ -323,7 +323,7 @@ public void testStopDiskBalancerWithInServiceDatanodes() 
throws Exception {
       c.parseArgs("--in-service-datanodes");
       cmd.call();
 
-      Pattern p = Pattern.compile("Stopped DiskBalancer on all IN_SERVICE 
nodes\\.");
+      Pattern p = Pattern.compile("Stopped DiskBalancer on all IN_SERVICE and 
HEALTHY nodes\\.");
       Matcher m = p.matcher(outContent.toString(DEFAULT_ENCODING));
       assertTrue(m.find());
     }
@@ -378,7 +378,7 @@ public void testUpdateDiskBalancerWithInServiceDatanodes() 
throws Exception {
       c.parseArgs("--in-service-datanodes", "-t", "0.005", "-b", "100");
       cmd.call();
 
-      Pattern p = Pattern.compile("Updated DiskBalancer configuration on all 
IN_SERVICE nodes\\.");
+      Pattern p = Pattern.compile("Updated DiskBalancer configuration on all 
IN_SERVICE and HEALTHY nodes\\.");
       Matcher m = p.matcher(outContent.toString(DEFAULT_ENCODING));
       assertTrue(m.find());
     }
diff --git 
a/hadoop-ozone/dist/src/main/smoketest/diskbalancer/testdiskbalancer.robot 
b/hadoop-ozone/dist/src/main/smoketest/diskbalancer/testdiskbalancer.robot
index 6e307846098..a6d02023d7c 100644
--- a/hadoop-ozone/dist/src/main/smoketest/diskbalancer/testdiskbalancer.robot
+++ b/hadoop-ozone/dist/src/main/smoketest/diskbalancer/testdiskbalancer.robot
@@ -46,11 +46,11 @@ Check failure with non-admin user to start, stop and update 
diskbalancer with --
 Check success with admin user for start, stop and update diskbalancer with 
--in-service-datanodes
     Run Keyword         Kinit test user                 testuser               
 testuser.keytab
     ${result} =         Execute                         ozone admin datanode 
diskbalancer start --in-service-datanodes
-                        Should Contain                  ${result}              
  Started DiskBalancer on all IN_SERVICE nodes.
+                        Should Contain                  ${result}              
  Started DiskBalancer on all IN_SERVICE and HEALTHY nodes.
     ${result} =         Execute                         ozone admin datanode 
diskbalancer stop --in-service-datanodes
-                        Should Contain                  ${result}              
  Stopped DiskBalancer on all IN_SERVICE nodes.
+                        Should Contain                  ${result}              
  Stopped DiskBalancer on all IN_SERVICE and HEALTHY nodes.
     ${result} =         Execute                         ozone admin datanode 
diskbalancer update -t 0.0002 --in-service-datanodes
-                        Should Contain                  ${result}              
  Updated DiskBalancer configuration on all IN_SERVICE nodes.
+                        Should Contain                  ${result}              
  Updated DiskBalancer configuration on all IN_SERVICE and HEALTHY nodes.
 
 Check success with non-admin user for status and report diskbalancer with 
--in-service-datanodes
     Run Keyword         Kinit test user                 testuser2              
 testuser2.keytab


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to