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

adoroszlai 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 a337a777909 HDDS-9855. Clarify error message for invalid volume or 
bucket name (#9301)
a337a777909 is described below

commit a337a7779097701f19ec1d7ea95be8c9e57dcc49
Author: Russole <[email protected]>
AuthorDate: Wed Nov 19 02:55:17 2025 +0800

    HDDS-9855. Clarify error message for invalid volume or bucket name (#9301)
---
 .../common/src/main/java/org/apache/hadoop/ozone/OmUtils.java    | 4 ++--
 .../hadoop/ozone/om/multitenant/TestMultiTenantVolume.java       | 4 +++-
 .../org/apache/hadoop/ozone/om/TestOMTenantCreateRequest.java    | 6 ++++--
 .../ozone/om/request/bucket/TestOMBucketCreateRequest.java       | 9 +++++++--
 .../ozone/om/request/volume/TestOMVolumeCreateRequest.java       | 6 ++++--
 5 files changed, 20 insertions(+), 9 deletions(-)

diff --git 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/OmUtils.java 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/OmUtils.java
index 7c3e1b12b33..cc75a83d0da 100644
--- a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/OmUtils.java
+++ b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/OmUtils.java
@@ -574,7 +574,7 @@ public static void validateVolumeName(String volumeName, 
boolean isStrictS3)
     try {
       HddsClientUtils.verifyResourceName(volumeName, "volume", isStrictS3);
     } catch (IllegalArgumentException e) {
-      throw new OMException("Invalid volume name: " + volumeName,
+      throw new OMException(e.getMessage(),
           OMException.ResultCodes.INVALID_VOLUME_NAME);
     }
   }
@@ -587,7 +587,7 @@ public static void validateBucketName(String bucketName, 
boolean isStrictS3)
     try {
       HddsClientUtils.verifyResourceName(bucketName, "bucket", isStrictS3);
     } catch (IllegalArgumentException e) {
-      throw new OMException("Invalid bucket name: " + bucketName,
+      throw new OMException(e.getMessage(),
           OMException.ResultCodes.INVALID_BUCKET_NAME);
     }
   }
diff --git 
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/multitenant/TestMultiTenantVolume.java
 
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/multitenant/TestMultiTenantVolume.java
index 92d09a1b523..82ac9855ad0 100644
--- 
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/multitenant/TestMultiTenantVolume.java
+++ 
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/multitenant/TestMultiTenantVolume.java
@@ -311,7 +311,9 @@ public void 
testRejectNonS3CompliantTenantIdCreationWithDefaultStrictS3True()
           OMException.class,
           () -> store.createTenant(tenantId));
 
-      assertThat(e.getMessage()).contains("Invalid volume name: " + tenantId);
+      assertThat(e.getMessage())
+          .contains("unsupported character")
+          .contains("_");
     }
   }
 }
diff --git 
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/TestOMTenantCreateRequest.java
 
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/TestOMTenantCreateRequest.java
index a37879e9c76..f5dc694f695 100644
--- 
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/TestOMTenantCreateRequest.java
+++ 
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/TestOMTenantCreateRequest.java
@@ -216,8 +216,10 @@ public void 
testRejectNonS3CompliantTenantIdCreationWithStrictS3True() {
 
       OMException omException = assertThrows(OMException.class,
           () -> doPreExecute(tenantId));
-      assertEquals("Invalid volume name: " + tenantId,
-          omException.getMessage());
+      assertEquals(
+          "volume name has an unsupported character : _",
+          omException.getMessage()
+      );
     }
   }
 
diff --git 
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/bucket/TestOMBucketCreateRequest.java
 
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/bucket/TestOMBucketCreateRequest.java
index 136421d2a4e..774a5c9ea0b 100644
--- 
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/bucket/TestOMBucketCreateRequest.java
+++ 
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/bucket/TestOMBucketCreateRequest.java
@@ -66,7 +66,9 @@ public void preExecuteRejectsInvalidBucketName() {
     // Verify invalid bucket name throws exception
     OMException omException = assertThrows(OMException.class,
         () -> doPreExecute("volume1", "b1"));
-    assertEquals("Invalid bucket name: b1", omException.getMessage());
+    assertEquals(
+        "bucket name 'b1' is too short, valid length is 3-63 characters",
+        omException.getMessage());
   }
 
   @Test
@@ -330,7 +332,10 @@ private void rejectBucketCreationHelper(String volumeName,
         String bucketName) {
     Throwable e = assertThrows(OMException.class, () ->
         doPreExecute(volumeName, bucketName));
-    assertEquals(e.getMessage(), "Invalid bucket name: " + bucketName);
+    assertEquals(
+        "bucket name has an unsupported character : _",
+        e.getMessage()
+    );
   }
 
   protected OMBucketCreateRequest doPreExecute(String volumeName,
diff --git 
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/volume/TestOMVolumeCreateRequest.java
 
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/volume/TestOMVolumeCreateRequest.java
index c352312a03a..e12b703d50a 100644
--- 
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/volume/TestOMVolumeCreateRequest.java
+++ 
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/volume/TestOMVolumeCreateRequest.java
@@ -55,7 +55,9 @@ public void testPreExecute() throws Exception {
     // Verify exception thrown on invalid volume name
     OMException omException = assertThrows(OMException.class,
         () -> doPreExecute("v1", adminName, ownerName));
-    assertEquals("Invalid volume name: v1", omException.getMessage());
+    assertEquals(
+        "volume name 'v1' is too short, valid length is 3-63 characters",
+        omException.getMessage());
   }
 
   @Test
@@ -302,7 +304,7 @@ private void rejectVolumeCreationHelper(String volumeName, 
String adminName,
     // Verify exception thrown on invalid volume name
     OMException omException = assertThrows(OMException.class,
         () -> doPreExecute(volumeName, adminName, ownerName));
-    assertEquals("Invalid volume name: " + volumeName,
+    assertEquals("volume name has an unsupported character : _",
         omException.getMessage());
   }
 


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

Reply via email to