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

ChenSammi 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 dc4ce7e8560 HDDS-15311. [DiskBalancer] Fix DiskBalancer DN container 
Log Format (#10307)
dc4ce7e8560 is described below

commit dc4ce7e85606b3a8d5ecc9f330635915a155b16f
Author: Gargi Jaiswal <[email protected]>
AuthorDate: Thu May 21 07:47:53 2026 +0530

    HDDS-15311. [DiskBalancer] Fix DiskBalancer DN container Log Format (#10307)
---
 .../container/common/utils/ContainerLogger.java    | 32 ++++++++++------------
 .../diskbalancer/DiskBalancerService.java          |  9 +++---
 2 files changed, 20 insertions(+), 21 deletions(-)

diff --git 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/utils/ContainerLogger.java
 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/utils/ContainerLogger.java
index a4eb1765b86..03b2a8a1ac8 100644
--- 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/utils/ContainerLogger.java
+++ 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/utils/ContainerLogger.java
@@ -181,40 +181,38 @@ public static void logReconciled(ContainerData 
containerData, long oldDataChecks
   /**
    * Logged when a container is successfully moved from one data volume to 
another.
    *
-   * @param containerId The ID of the moved container.
+   * @param containerData The container after it has been moved to the 
destination volume.
    * @param sourceVolume The source volume path.
    * @param destinationVolume The destination volume path.
    * @param containerSize The size of data moved from container in bytes.
    * @param timeTaken The time taken for the move in milliseconds.
    */
-  public static void logMoveSuccess(long containerId, StorageVolume 
sourceVolume,
+  public static void logMoveSuccess(ContainerData containerData, StorageVolume 
sourceVolume,
       StorageVolume destinationVolume, long containerSize, long timeTaken) {
-    LOG.info(getMessage(containerId, sourceVolume, destinationVolume, 
containerSize, timeTaken));
+    LOG.info(getMessage(containerData,
+        "SrcVolume=" + sourceVolume,
+        "DestVolume=" + destinationVolume,
+        "Size=" + containerSize + " bytes",
+        "TimeTaken=" + timeTaken + " ms",
+        "Container is moved from SrcVolume to DestVolume"));
   }
 
-  private static String getMessage(ContainerData containerData,
-                                   String message) {
+  private static String getMessage(ContainerData containerData, String 
message) {
     return String.join(FIELD_SEPARATOR, getMessage(containerData), message);
   }
 
-  private static String getMessage(ContainerData containerData) {
+  private static String getMessage(ContainerData containerData, String... 
fields) {
     return String.join(FIELD_SEPARATOR,
         "ID=" + containerData.getContainerID(),
         "Index=" + containerData.getReplicaIndex(),
         "BCSID=" + containerData.getBlockCommitSequenceId(),
         "State=" + containerData.getState(),
-        "Volume=" + containerData.getVolume(),
-        "DataChecksum=" + checksumToString(containerData.getDataChecksum()));
+        String.join(FIELD_SEPARATOR, fields));
   }
 
-  private static String getMessage(long containerId, StorageVolume 
sourceVolume,
-      StorageVolume destinationVolume, long containerSize, long timeTaken) {
-    return String.join(FIELD_SEPARATOR,
-        "ID=" + containerId,
-        "SrcVolume=" + sourceVolume,
-        "DestVolume=" + destinationVolume,
-        "Size=" + containerSize + " bytes",
-        "TimeTaken=" + timeTaken + " ms",
-        "Container is moved from SrcVolume to DestVolume");
+  private static String getMessage(ContainerData containerData) {
+    return getMessage(containerData,
+        "Volume=" + containerData.getVolume(),
+        "DataChecksum=" + checksumToString(containerData.getDataChecksum()));
   }
 }
diff --git 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/diskbalancer/DiskBalancerService.java
 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/diskbalancer/DiskBalancerService.java
index a962c0e80ff..1d065024dfb 100644
--- 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/diskbalancer/DiskBalancerService.java
+++ 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/diskbalancer/DiskBalancerService.java
@@ -509,6 +509,7 @@ protected class DiskBalancerTask implements BackgroundTask {
     public BackgroundTaskResult call() {
       long startTime = Time.monotonicNow();
       boolean moveSucceeded = true;
+      Container newContainer = null;
       long containerId = containerData.getContainerID();
       Container container = 
ozoneContainer.getContainerSet().getContainer(containerId);
       boolean readLockReleased = false;
@@ -580,7 +581,7 @@ public BackgroundTaskResult call() {
         }
 
         // Import the container. importContainer will reset container back to 
original state
-        Container newContainer = 
ozoneContainer.getController().importContainer(tempContainerData);
+        newContainer = 
ozoneContainer.getController().importContainer(tempContainerData);
 
         // Step 4: Update container for containerID and mark old container for 
deletion
         // first, update the in-memory set to point to the new replica.
@@ -633,13 +634,13 @@ public BackgroundTaskResult call() {
         if (!readLockReleased) {
           container.readUnlock();
         }
-        if (moveSucceeded) {
+        if (moveSucceeded && newContainer != null) {
           // Add current old container to pendingDeletionContainers.
           pendingDeletionContainers.put(System.currentTimeMillis() + 
replicaDeletionDelay, container);
-          ContainerLogger.logMoveSuccess(containerId, sourceVolume,
+          ContainerLogger.logMoveSuccess(newContainer.getContainerData(), 
sourceVolume,
               destVolume, containerSize, Time.monotonicNow() - startTime);
         }
-        postCall(moveSucceeded, startTime);
+        postCall(moveSucceeded && newContainer != null, startTime);
 
         // pick one expired container from pendingDeletionContainers to delete
         tryCleanupOnePendingDeletionContainer();


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

Reply via email to