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

peterxcli 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 380f31d425 HDDS-13341. Rename ScanResult.isHealthy() to hasErrors() 
(#8746)
380f31d425 is described below

commit 380f31d4257db6d637c46d7df759da5d21c75949
Author: Mahesh kumar Gaddam <[email protected]>
AuthorDate: Sat Jul 5 03:58:37 2025 -0500

    HDDS-13341. Rename ScanResult.isHealthy() to hasErrors() (#8746)
---
 .../container/common/interfaces/ScanResult.java    |  2 +-
 .../container/keyvalue/KeyValueContainerCheck.java |  2 +-
 .../BackgroundContainerMetadataScanner.java        |  2 +-
 .../container/ozoneimpl/ContainerScanHelper.java   |  2 +-
 .../ozone/container/ozoneimpl/DataScanResult.java  |  2 +-
 .../container/ozoneimpl/MetadataScanResult.java    |  4 +--
 .../keyvalue/TestKeyValueContainerCheck.java       | 30 +++++++++++-----------
 .../container/ozoneimpl/TestDataScanResult.java    |  8 +++---
 .../ozoneimpl/TestMetadataScanResult.java          |  6 ++---
 9 files changed, 29 insertions(+), 29 deletions(-)

diff --git 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/interfaces/ScanResult.java
 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/interfaces/ScanResult.java
index cbfd13f423..f7c363a4cd 100644
--- 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/interfaces/ScanResult.java
+++ 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/interfaces/ScanResult.java
@@ -24,7 +24,7 @@
  * Encapsulates the result of a container scan.
  */
 public interface ScanResult {
-  boolean isHealthy();
+  boolean hasErrors();
 
   boolean isDeleted();
 
diff --git 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/keyvalue/KeyValueContainerCheck.java
 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/keyvalue/KeyValueContainerCheck.java
index e769781da4..fd6db605c9 100644
--- 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/keyvalue/KeyValueContainerCheck.java
+++ 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/keyvalue/KeyValueContainerCheck.java
@@ -183,7 +183,7 @@ public DataScanResult fullCheck(DataTransferThrottler 
throttler, Canceler cancel
     MetadataScanResult metadataResult = fastCheck();
     if (metadataResult.isDeleted()) {
       return DataScanResult.deleted();
-    } else if (!metadataResult.isHealthy()) {
+    } else if (metadataResult.hasErrors()) {
       return DataScanResult.unhealthyMetadata(metadataResult);
     }
 
diff --git 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/BackgroundContainerMetadataScanner.java
 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/BackgroundContainerMetadataScanner.java
index 02c786fed7..cb57fc1929 100644
--- 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/BackgroundContainerMetadataScanner.java
+++ 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/BackgroundContainerMetadataScanner.java
@@ -65,7 +65,7 @@ public void scanContainer(Container<?> container)
       LOG.debug("Container [{}] has been deleted during the metadata scan.", 
containerID);
       return;
     }
-    if (!result.isHealthy()) {
+    if (result.hasErrors()) {
       scanHelper.handleUnhealthyScanResult(containerID, result);
     }
 
diff --git 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/ContainerScanHelper.java
 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/ContainerScanHelper.java
index 9e04b7df15..6cd7b80f02 100644
--- 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/ContainerScanHelper.java
+++ 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/ContainerScanHelper.java
@@ -74,7 +74,7 @@ public void scanData(Container<?> container, 
DataTransferThrottler throttler, Ca
       } catch (IOException ex) {
         log.warn("Failed to update container checksum after scan of container 
{}", containerId, ex);
       }
-      if (!result.isHealthy()) {
+      if (result.hasErrors()) {
         handleUnhealthyScanResult(containerId, result);
       }
       metrics.incNumContainersScanned();
diff --git 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/DataScanResult.java
 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/DataScanResult.java
index 05d5e0cb02..dc8b16af84 100644
--- 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/DataScanResult.java
+++ 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/DataScanResult.java
@@ -45,7 +45,7 @@ private DataScanResult(List<ContainerScanError> errors, 
ContainerMerkleTreeWrite
    * This data scan result will have an empty data tree with a zero checksum 
to indicate that no data was scanned.
    */
   public static DataScanResult unhealthyMetadata(MetadataScanResult result) {
-    Preconditions.checkArgument(!result.isHealthy());
+    Preconditions.checkArgument(result.hasErrors());
     return new DataScanResult(result.getErrors(), new 
ContainerMerkleTreeWriter(), false);
   }
 
diff --git 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/MetadataScanResult.java
 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/MetadataScanResult.java
index 8f0bcaeac4..b4181969ba 100644
--- 
a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/MetadataScanResult.java
+++ 
b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ozoneimpl/MetadataScanResult.java
@@ -63,8 +63,8 @@ public boolean isDeleted() {
   }
 
   @Override
-  public boolean isHealthy() {
-    return errors.isEmpty();
+  public boolean hasErrors() {
+    return !errors.isEmpty();
   }
 
   @Override
diff --git 
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/keyvalue/TestKeyValueContainerCheck.java
 
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/keyvalue/TestKeyValueContainerCheck.java
index 51a1d774ea..92e7a071cc 100644
--- 
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/keyvalue/TestKeyValueContainerCheck.java
+++ 
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/keyvalue/TestKeyValueContainerCheck.java
@@ -121,7 +121,7 @@ public void 
testExitEarlyOnMetadataError(ContainerTestVersionInfo versionInfo,
     KeyValueContainerCheck kvCheck = new KeyValueContainerCheck(conf, 
container);
 
     DataScanResult result = kvCheck.fullCheck(throttler, null);
-    assertTrue(result.isHealthy());
+    assertFalse(result.hasErrors());
 
     // Inject a metadata and a data error.
     metadataCorruption.applyTo(container);
@@ -131,7 +131,7 @@ public void 
testExitEarlyOnMetadataError(ContainerTestVersionInfo versionInfo,
     }
 
     result = kvCheck.fullCheck(throttler, null);
-    assertFalse(result.isHealthy());
+    assertTrue(result.hasErrors());
     // Scan should have failed after the first metadata error and not made it 
to the data error.
     assertEquals(1, result.getErrors().size());
     assertEquals(metadataCorruption.getExpectedResult(), 
result.getErrors().get(0).getFailureType());
@@ -157,7 +157,7 @@ public void 
testAllDataErrorsCollected(ContainerTestVersionInfo versionInfo) thr
     KeyValueContainerCheck kvCheck = new KeyValueContainerCheck(conf, 
container);
 
     DataScanResult result = kvCheck.fullCheck(throttler, null);
-    assertTrue(result.isHealthy());
+    assertFalse(result.hasErrors());
     // The scanner would write the checksum file to disk. 
`KeyValueContainerCheck` does not, so we will create the
     // result here.
     ContainerProtos.ContainerChecksumInfo healthyChecksumInfo = 
ContainerProtos.ContainerChecksumInfo.newBuilder()
@@ -186,7 +186,7 @@ public void 
testAllDataErrorsCollected(ContainerTestVersionInfo versionInfo) thr
     result = kvCheck.fullCheck(throttler, null);
     result.getErrors().forEach(e -> LOG.info("Error detected: {}", e));
 
-    assertFalse(result.isHealthy());
+    assertTrue(result.hasErrors());
     // Check that all data errors were detected in order.
     assertEquals(expectedErrors.size(), result.getErrors().size());
     List<FailureType> actualErrors = result.getErrors().stream()
@@ -246,14 +246,14 @@ public void testKeyValueContainerCheckNoCorruption(
     KeyValueContainerCheck kvCheck = new KeyValueContainerCheck(conf, 
container);
 
     // first run checks on a Open Container
-    boolean valid = kvCheck.fastCheck().isHealthy();
+    boolean valid = !kvCheck.fastCheck().hasErrors();
     assertTrue(valid);
 
     container.close();
 
     // next run checks on a Closed Container
-    valid = kvCheck.fullCheck(new DataTransferThrottler(
-        c.getBandwidthPerVolume()), null).isHealthy();
+    valid = !kvCheck.fullCheck(new DataTransferThrottler(
+        c.getBandwidthPerVolume()), null).hasErrors();
     assertTrue(valid);
   }
 
@@ -301,12 +301,12 @@ public void testKeyValueContainerCheckCorruption(
     }
 
     // metadata check should pass.
-    boolean valid = kvCheck.fastCheck().isHealthy();
+    boolean valid = !kvCheck.fastCheck().hasErrors();
     assertTrue(valid);
 
     // checksum validation should fail.
-    valid = kvCheck.fullCheck(new DataTransferThrottler(
-            sc.getBandwidthPerVolume()), null).isHealthy();
+    valid = !kvCheck.fullCheck(new DataTransferThrottler(
+            sc.getBandwidthPerVolume()), null).hasErrors();
     assertFalse(valid);
   }
 
@@ -320,7 +320,7 @@ void 
testKeyValueContainerCheckDeletedContainer(ContainerTestVersionInfo version
     KeyValueContainerCheck kvCheck = new KeyValueContainerCheck(getConf(), 
container);
     // The full container should exist and pass a scan.
     ScanResult result = kvCheck.fullCheck(mock(DataTransferThrottler.class), 
mock(Canceler.class));
-    assertTrue(result.isHealthy());
+    assertFalse(result.hasErrors());
     assertFalse(result.isDeleted());
 
     // When a container is not marked for deletion and it has pieces missing, 
the scan should fail.
@@ -328,14 +328,14 @@ void 
testKeyValueContainerCheckDeletedContainer(ContainerTestVersionInfo version
     FileUtils.deleteDirectory(metadataDir);
     assertFalse(metadataDir.exists());
     result = kvCheck.fullCheck(mock(DataTransferThrottler.class), 
mock(Canceler.class));
-    assertFalse(result.isHealthy());
+    assertTrue(result.hasErrors());
     assertFalse(result.isDeleted());
 
     // Once the container is marked for deletion, the scan should pass even if 
some of the internal pieces are missing.
     // Here the metadata directory has been deleted.
     container.markContainerForDelete();
     result = kvCheck.fullCheck(mock(DataTransferThrottler.class), 
mock(Canceler.class));
-    assertTrue(result.isHealthy());
+    assertFalse(result.hasErrors());
     assertTrue(result.isDeleted());
 
     // Now the data directory is deleted.
@@ -343,7 +343,7 @@ void 
testKeyValueContainerCheckDeletedContainer(ContainerTestVersionInfo version
     FileUtils.deleteDirectory(chunksDir);
     assertFalse(chunksDir.exists());
     result = kvCheck.fullCheck(mock(DataTransferThrottler.class), 
mock(Canceler.class));
-    assertTrue(result.isHealthy());
+    assertFalse(result.hasErrors());
     assertTrue(result.isDeleted());
 
     // Now the whole container directory is gone.
@@ -351,7 +351,7 @@ void 
testKeyValueContainerCheckDeletedContainer(ContainerTestVersionInfo version
     FileUtils.deleteDirectory(containerDir);
     assertFalse(containerDir.exists());
     result = kvCheck.fullCheck(mock(DataTransferThrottler.class), 
mock(Canceler.class));
-    assertTrue(result.isHealthy());
+    assertFalse(result.hasErrors());
     assertTrue(result.isDeleted());
   }
 }
diff --git 
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/ozoneimpl/TestDataScanResult.java
 
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/ozoneimpl/TestDataScanResult.java
index 27e91daa0b..a9336d7b45 100644
--- 
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/ozoneimpl/TestDataScanResult.java
+++ 
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/ozoneimpl/TestDataScanResult.java
@@ -39,7 +39,7 @@ class TestDataScanResult {
   void testFromEmptyErrors() {
     // No errors means the scan result is healthy.
     DataScanResult result = DataScanResult.fromErrors(Collections.emptyList(), 
TREE);
-    assertTrue(result.isHealthy());
+    assertFalse(result.hasErrors());
     assertFalse(result.isDeleted());
     assertTrue(result.getErrors().isEmpty());
     assertTrue(result.toString().contains("0 errors"));
@@ -51,7 +51,7 @@ void testUnhealthyMetadata() {
     MetadataScanResult metadataResult =
         
MetadataScanResult.fromErrors(Collections.singletonList(getMetadataScanError()));
     DataScanResult result = DataScanResult.unhealthyMetadata(metadataResult);
-    assertFalse(result.isHealthy());
+    assertTrue(result.hasErrors());
     assertFalse(result.isDeleted());
     assertEquals(1, result.getErrors().size());
     assertTrue(result.toString().contains("1 error"));
@@ -62,7 +62,7 @@ void testUnhealthyMetadata() {
   @Test
   void testFromErrors() {
     DataScanResult result = 
DataScanResult.fromErrors(Arrays.asList(getDataScanError(), 
getDataScanError()), TREE);
-    assertFalse(result.isHealthy());
+    assertTrue(result.hasErrors());
     assertFalse(result.isDeleted());
     assertEquals(2, result.getErrors().size());
     assertTrue(result.toString().contains("2 errors"));
@@ -73,7 +73,7 @@ void testFromErrors() {
   @Test
   void testDeleted() {
     DataScanResult result = DataScanResult.deleted();
-    assertTrue(result.isHealthy());
+    assertFalse(result.hasErrors());
     assertTrue(result.isDeleted());
     assertTrue(result.getErrors().isEmpty());
     assertTrue(result.toString().contains("deleted"));
diff --git 
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/ozoneimpl/TestMetadataScanResult.java
 
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/ozoneimpl/TestMetadataScanResult.java
index b5daf88300..d477ba9560 100644
--- 
a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/ozoneimpl/TestMetadataScanResult.java
+++ 
b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/ozoneimpl/TestMetadataScanResult.java
@@ -31,7 +31,7 @@ class TestMetadataScanResult {
   void testFromEmptyErrors() {
     // No errors means the scan result is healthy.
     MetadataScanResult result = 
MetadataScanResult.fromErrors(Collections.emptyList());
-    assertTrue(result.isHealthy());
+    assertFalse(result.hasErrors());
     assertFalse(result.isDeleted());
     assertTrue(result.getErrors().isEmpty());
     assertTrue(result.toString().contains("0 errors"));
@@ -41,7 +41,7 @@ void testFromEmptyErrors() {
   void testFromErrors() {
     MetadataScanResult result =
         MetadataScanResult.fromErrors(Arrays.asList(getMetadataScanError(), 
getMetadataScanError()));
-    assertFalse(result.isHealthy());
+    assertTrue(result.hasErrors());
     assertFalse(result.isDeleted());
     assertEquals(2, result.getErrors().size());
     assertTrue(result.toString().contains("2 errors"));
@@ -50,7 +50,7 @@ void testFromErrors() {
   @Test
   void testDeleted() {
     MetadataScanResult result = MetadataScanResult.deleted();
-    assertTrue(result.isHealthy());
+    assertFalse(result.hasErrors());
     assertTrue(result.isDeleted());
     assertTrue(result.getErrors().isEmpty());
     assertTrue(result.toString().contains("deleted"));


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

Reply via email to