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 cfc04499882 HDDS-14197. Add utility for generating unique object name 
in tests (#9517)
cfc04499882 is described below

commit cfc04499882b9eb2306c6fac9cf30e3da1944c63
Author: Doroszlai, Attila <[email protected]>
AuthorDate: Fri Dec 19 10:28:06 2025 +0100

    HDDS-14197. Add utility for generating unique object name in tests (#9517)
---
 .../test/java/org/apache/ozone/test/OzoneTestBase.java   | 16 ++++++++++++++++
 .../hadoop/ozone/s3/awssdk/v1/AbstractS3SDKV1Tests.java  |  9 ++++-----
 .../hadoop/ozone/s3/awssdk/v2/AbstractS3SDKV2Tests.java  |  9 ++++-----
 .../org/apache/hadoop/fs/ozone/TestLeaseRecovery.java    |  7 ++-----
 .../apache/hadoop/ozone/om/TestBucketManagerImpl.java    |  2 +-
 .../hadoop/ozone/om/service/TestKeyDeletingService.java  |  4 ----
 6 files changed, 27 insertions(+), 20 deletions(-)

diff --git 
a/hadoop-hdds/test-utils/src/test/java/org/apache/ozone/test/OzoneTestBase.java 
b/hadoop-hdds/test-utils/src/test/java/org/apache/ozone/test/OzoneTestBase.java
index 67446b27692..93ded5dd880 100644
--- 
a/hadoop-hdds/test-utils/src/test/java/org/apache/ozone/test/OzoneTestBase.java
+++ 
b/hadoop-hdds/test-utils/src/test/java/org/apache/ozone/test/OzoneTestBase.java
@@ -18,6 +18,9 @@
 package org.apache.ozone.test;
 
 import java.lang.reflect.Method;
+import java.util.Locale;
+import java.util.Objects;
+import java.util.concurrent.atomic.AtomicInteger;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.TestInfo;
 
@@ -27,6 +30,7 @@
  */
 public abstract class OzoneTestBase {
 
+  private static final AtomicInteger OBJECT_COUNTER = new AtomicInteger();
   private TestInfo info;
 
   @BeforeEach
@@ -40,4 +44,16 @@ protected String getTestName() {
         .orElse("unknown");
   }
 
+  /** @return unique lowercase name of maximum 60 characters, including (some 
of) the current test's name */
+  protected String uniqueObjectName() {
+    return uniqueObjectName(getTestName());
+  }
+
+  /** @return unique lowercase name of maximum 60 characters, including (some 
of) {@code prefix} */
+  public static String uniqueObjectName(String prefix) {
+    return Objects.requireNonNull(prefix, "prefix == null")
+        .substring(0, Math.min(prefix.length(), 50))
+        .toLowerCase(Locale.ROOT)
+        + String.format("%010d", OBJECT_COUNTER.getAndIncrement());
+  }
 }
diff --git 
a/hadoop-ozone/integration-test-s3/src/test/java/org/apache/hadoop/ozone/s3/awssdk/v1/AbstractS3SDKV1Tests.java
 
b/hadoop-ozone/integration-test-s3/src/test/java/org/apache/hadoop/ozone/s3/awssdk/v1/AbstractS3SDKV1Tests.java
index 93fda7b2600..5e200e1350a 100644
--- 
a/hadoop-ozone/integration-test-s3/src/test/java/org/apache/hadoop/ozone/s3/awssdk/v1/AbstractS3SDKV1Tests.java
+++ 
b/hadoop-ozone/integration-test-s3/src/test/java/org/apache/hadoop/ozone/s3/awssdk/v1/AbstractS3SDKV1Tests.java
@@ -94,7 +94,6 @@
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
-import java.util.Locale;
 import java.util.Map;
 import java.util.Set;
 import java.util.stream.Collectors;
@@ -1424,16 +1423,16 @@ private String getBucketName() {
     return getBucketName("");
   }
 
-  private String getBucketName(String suffix) {
-    return ("v1-" + getTestName() + "bucket" + 
suffix).toLowerCase(Locale.ROOT);
+  private String getBucketName(String ignored) {
+    return uniqueObjectName();
   }
 
   private String getKeyName() {
     return getKeyName("");
   }
 
-  private String getKeyName(String suffix) {
-    return (getTestName() +  "key" + suffix).toLowerCase(Locale.ROOT);
+  private String getKeyName(String ignored) {
+    return uniqueObjectName();
   }
 
   private String multipartUpload(String bucketName, String key, File file, 
long partSize, String contentType,
diff --git 
a/hadoop-ozone/integration-test-s3/src/test/java/org/apache/hadoop/ozone/s3/awssdk/v2/AbstractS3SDKV2Tests.java
 
b/hadoop-ozone/integration-test-s3/src/test/java/org/apache/hadoop/ozone/s3/awssdk/v2/AbstractS3SDKV2Tests.java
index 7bdc1778289..09026dcb918 100644
--- 
a/hadoop-ozone/integration-test-s3/src/test/java/org/apache/hadoop/ozone/s3/awssdk/v2/AbstractS3SDKV2Tests.java
+++ 
b/hadoop-ozone/integration-test-s3/src/test/java/org/apache/hadoop/ozone/s3/awssdk/v2/AbstractS3SDKV2Tests.java
@@ -47,7 +47,6 @@
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
-import java.util.Locale;
 import java.util.Map;
 import java.util.stream.Collectors;
 import javax.xml.bind.DatatypeConverter;
@@ -1066,16 +1065,16 @@ private String getBucketName() {
     return getBucketName("");
   }
 
-  private String getBucketName(String suffix) {
-    return ("v2-" + getTestName() + "bucket" + 
suffix).toLowerCase(Locale.ROOT);
+  private String getBucketName(String ignored) {
+    return uniqueObjectName();
   }
 
   private String getKeyName() {
     return getKeyName("");
   }
 
-  private String getKeyName(String suffix) {
-    return (getTestName() +  "key" + suffix).toLowerCase(Locale.ROOT);
+  private String getKeyName(String ignored) {
+    return uniqueObjectName();
   }
 
   private String multipartUpload(String bucketName, String key, File file, int 
partSize,
diff --git 
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/fs/ozone/TestLeaseRecovery.java
 
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/fs/ozone/TestLeaseRecovery.java
index 800cc04f476..061ced5bd93 100644
--- 
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/fs/ozone/TestLeaseRecovery.java
+++ 
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/fs/ozone/TestLeaseRecovery.java
@@ -42,7 +42,6 @@
 import java.util.LinkedList;
 import java.util.concurrent.ThreadLocalRandom;
 import java.util.concurrent.TimeoutException;
-import java.util.concurrent.atomic.AtomicInteger;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.hadoop.fs.CommonConfigurationKeysPublic;
 import org.apache.hadoop.fs.FSDataInputStream;
@@ -96,8 +95,6 @@
 @TestMethodOrder(MethodOrderer.OrderAnnotation.class)
 public class TestLeaseRecovery extends OzoneTestBase {
 
-  private static final AtomicInteger FILE_COUNTER = new AtomicInteger();
-
   private MiniOzoneCluster cluster;
 
   private OzoneClient client;
@@ -176,7 +173,7 @@ public void init() throws IOException, InterruptedException,
 
   @BeforeEach
   void beforeEach() throws Exception {
-    file = new Path(dir, "file-" + getTestName() + "-" + 
FILE_COUNTER.incrementAndGet());
+    file = new Path(dir, uniqueObjectName());
     fs = (RootedOzoneFileSystem) FileSystem.get(conf);
   }
 
@@ -266,7 +263,7 @@ public void testOBSRecoveryShouldFail() throws Exception {
     OzoneBucket obsBucket = TestDataUtil.createVolumeAndBucket(client,
         "vol2", "obs", BucketLayout.OBJECT_STORE);
     String obsDir = OZONE_ROOT + obsBucket.getVolumeName() + 
OZONE_URI_DELIMITER + obsBucket.getName();
-    Path obsFile = new Path(obsDir, "file" + getTestName() + 
FILE_COUNTER.incrementAndGet());
+    Path obsFile = new Path(obsDir, uniqueObjectName());
 
     assertThrows(IllegalArgumentException.class, () -> 
fs.recoverLease(obsFile));
   }
diff --git 
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/TestBucketManagerImpl.java
 
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/TestBucketManagerImpl.java
index 5b742c4b22e..42d748607ac 100644
--- 
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/TestBucketManagerImpl.java
+++ 
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/TestBucketManagerImpl.java
@@ -86,7 +86,7 @@ void cleanup() throws Exception {
   }
 
   public String volumeName() {
-    return getTestName().toLowerCase();
+    return uniqueObjectName();
   }
 
   private void createSampleVol(String volume) throws IOException {
diff --git 
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/service/TestKeyDeletingService.java
 
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/service/TestKeyDeletingService.java
index 73cf8c2cf2f..a01c6b89f07 100644
--- 
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/service/TestKeyDeletingService.java
+++ 
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/service/TestKeyDeletingService.java
@@ -1389,8 +1389,4 @@ private long countBlocksPendingDeletion() {
       throw new UncheckedIOException(e);
     }
   }
-
-  private static String uniqueObjectName(String prefix) {
-    return prefix + String.format("%010d", OBJECT_COUNTER.getAndIncrement());
-  }
 }


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

Reply via email to