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

lhotari pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/pulsar.git

commit ec96825ea498bbda14bf6f130f3f8410bbdc88cf
Author: Lari Hotari <[email protected]>
AuthorDate: Thu Jul 17 11:30:44 2025 +0300

    [improve][test][branch-3.0] Backport 
MockedPulsarServiceBaseTest.registerCloseable to branch-3.0
    
    - originally added in #21477 for Pulsar 3.2.0
---
 .../broker/auth/MockedPulsarServiceBaseTest.java    | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git 
a/pulsar-broker/src/test/java/org/apache/pulsar/broker/auth/MockedPulsarServiceBaseTest.java
 
b/pulsar-broker/src/test/java/org/apache/pulsar/broker/auth/MockedPulsarServiceBaseTest.java
index 8c852cd2ec2..02f00a55d1d 100644
--- 
a/pulsar-broker/src/test/java/org/apache/pulsar/broker/auth/MockedPulsarServiceBaseTest.java
+++ 
b/pulsar-broker/src/test/java/org/apache/pulsar/broker/auth/MockedPulsarServiceBaseTest.java
@@ -26,9 +26,11 @@ import java.lang.reflect.Method;
 import java.net.InetSocketAddress;
 import java.net.URI;
 import java.net.URL;
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Date;
 import java.util.HashSet;
+import java.util.List;
 import java.util.Map;
 import java.util.Optional;
 import java.util.Set;
@@ -139,6 +141,8 @@ public abstract class MockedPulsarServiceBaseTest extends 
TestRetrySupport {
 
     protected boolean enableBrokerInterceptor = false;
 
+    private final List<AutoCloseable> closeables = new ArrayList<>();
+
     // Set to true in test's constructor to use a real Zookeeper (TestZKServer)
     protected boolean useTestZookeeper;
 
@@ -268,6 +272,8 @@ public abstract class MockedPulsarServiceBaseTest extends 
TestRetrySupport {
         }
 
         resetConfig();
+        callCloseables(closeables);
+        closeables.clear();
         onCleanup();
 
         // clear fields to avoid test runtime memory leak, pulsarTestContext 
already handles closing of these instances
@@ -280,6 +286,21 @@ public abstract class MockedPulsarServiceBaseTest extends 
TestRetrySupport {
 
     }
 
+    protected <T extends AutoCloseable> T registerCloseable(T closeable) {
+        closeables.add(closeable);
+        return closeable;
+    }
+
+    private static void callCloseables(List<AutoCloseable> closeables) {
+        for (int i = closeables.size() - 1; i >= 0; i--) {
+            try {
+                closeables.get(i).close();
+            } catch (Exception e) {
+                log.error("Failure in calling close method", e);
+            }
+        }
+    }
+
     protected abstract void setup() throws Exception;
 
     protected abstract void cleanup() throws Exception;

Reply via email to