This is an automated email from the ASF dual-hosted git repository.
lhotari pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar.git
The following commit(s) were added to refs/heads/master by this push:
new e55de39e358 [fix][test] Fix thread leaks related to unclosed
WebSocketService (#21453)
e55de39e358 is described below
commit e55de39e358e18a72b4156c7cd4ac4831a573864
Author: Lari Hotari <[email protected]>
AuthorDate: Sat Oct 28 15:28:06 2023 -0700
[fix][test] Fix thread leaks related to unclosed WebSocketService (#21453)
---
.../pulsar/websocket/proxy/ProxyEncryptionPublishConsumeTest.java | 2 +-
.../websocket/proxy/ProxyPublishConsumeClientSideEncryptionTest.java | 2 +-
.../org/apache/pulsar/websocket/AbstractWebSocketHandlerTest.java | 4 +++-
.../pulsar/websocket/WebSocketHttpServletRequestWrapperTest.java | 2 ++
4 files changed, 7 insertions(+), 3 deletions(-)
diff --git
a/pulsar-broker/src/test/java/org/apache/pulsar/websocket/proxy/ProxyEncryptionPublishConsumeTest.java
b/pulsar-broker/src/test/java/org/apache/pulsar/websocket/proxy/ProxyEncryptionPublishConsumeTest.java
index 041107e5e93..cf7304615f5 100644
---
a/pulsar-broker/src/test/java/org/apache/pulsar/websocket/proxy/ProxyEncryptionPublishConsumeTest.java
+++
b/pulsar-broker/src/test/java/org/apache/pulsar/websocket/proxy/ProxyEncryptionPublishConsumeTest.java
@@ -73,7 +73,7 @@ public class ProxyEncryptionPublishConsumeTest extends
ProducerConsumerBase {
config.setClusterName("test");
config.setConfigurationMetadataStoreUrl(GLOBAL_DUMMY_VALUE);
config.setCryptoKeyReaderFactoryClassName(CryptoKeyReaderFactoryImpl.class.getName());
- WebSocketService service = spy(new WebSocketService(config));
+ service = spy(new WebSocketService(config));
doReturn(new ZKMetadataStore(mockZooKeeperGlobal)).when(service)
.createConfigMetadataStore(anyString(), anyInt(),
anyBoolean());
proxyServer = new ProxyServer(config);
diff --git
a/pulsar-broker/src/test/java/org/apache/pulsar/websocket/proxy/ProxyPublishConsumeClientSideEncryptionTest.java
b/pulsar-broker/src/test/java/org/apache/pulsar/websocket/proxy/ProxyPublishConsumeClientSideEncryptionTest.java
index e36d9d2a194..16936d65fc2 100644
---
a/pulsar-broker/src/test/java/org/apache/pulsar/websocket/proxy/ProxyPublishConsumeClientSideEncryptionTest.java
+++
b/pulsar-broker/src/test/java/org/apache/pulsar/websocket/proxy/ProxyPublishConsumeClientSideEncryptionTest.java
@@ -77,7 +77,7 @@ public class ProxyPublishConsumeClientSideEncryptionTest
extends ProducerConsume
config.setWebServicePort(Optional.of(0));
config.setClusterName("test");
config.setConfigurationMetadataStoreUrl(GLOBAL_DUMMY_VALUE);
- WebSocketService service = spy(new WebSocketService(config));
+ service = spy(new WebSocketService(config));
doReturn(new ZKMetadataStore(mockZooKeeperGlobal)).when(service)
.createConfigMetadataStore(anyString(), anyInt(),
anyBoolean());
proxyServer = new ProxyServer(config);
diff --git
a/pulsar-websocket/src/test/java/org/apache/pulsar/websocket/AbstractWebSocketHandlerTest.java
b/pulsar-websocket/src/test/java/org/apache/pulsar/websocket/AbstractWebSocketHandlerTest.java
index eec2c3d1baa..7ec6faf6342 100644
---
a/pulsar-websocket/src/test/java/org/apache/pulsar/websocket/AbstractWebSocketHandlerTest.java
+++
b/pulsar-websocket/src/test/java/org/apache/pulsar/websocket/AbstractWebSocketHandlerTest.java
@@ -37,6 +37,7 @@ import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import lombok.Cleanup;
import lombok.Getter;
import org.apache.pulsar.broker.authentication.AuthenticationDataSource;
import org.apache.pulsar.client.api.CompressionType;
@@ -388,10 +389,11 @@ public class AbstractWebSocketHandlerTest {
}
@Test
- public void testPingFuture() {
+ public void testPingFuture() throws IOException {
WebSocketProxyConfiguration webSocketProxyConfiguration = new
WebSocketProxyConfiguration();
webSocketProxyConfiguration.setWebSocketPingDurationSeconds(5);
+ @Cleanup
WebSocketService webSocketService = new
WebSocketService(webSocketProxyConfiguration);
HttpServletRequest httpServletRequest = mock(HttpServletRequest.class);
diff --git
a/pulsar-websocket/src/test/java/org/apache/pulsar/websocket/WebSocketHttpServletRequestWrapperTest.java
b/pulsar-websocket/src/test/java/org/apache/pulsar/websocket/WebSocketHttpServletRequestWrapperTest.java
index b11529bf2f1..48a822272b8 100644
---
a/pulsar-websocket/src/test/java/org/apache/pulsar/websocket/WebSocketHttpServletRequestWrapperTest.java
+++
b/pulsar-websocket/src/test/java/org/apache/pulsar/websocket/WebSocketHttpServletRequestWrapperTest.java
@@ -18,6 +18,7 @@
*/
package org.apache.pulsar.websocket;
+import lombok.Cleanup;
import org.apache.pulsar.common.configuration.PulsarConfigurationLoader;
import org.apache.pulsar.websocket.service.WebSocketProxyConfiguration;
import org.eclipse.jetty.websocket.servlet.UpgradeHttpServletRequest;
@@ -70,6 +71,7 @@ public class WebSocketHttpServletRequestWrapperTest {
WebSocketProxyConfiguration.class);
String publicKeyPath = "file://" +
this.getClass().getClassLoader().getResource("my-public.key").getFile();
config.getProperties().setProperty("tokenPublicKey", publicKeyPath);
+ @Cleanup
WebSocketService service = new WebSocketService(config);
service.start();