You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by eo...@apache.org on 2021/04/15 09:42:22 UTC
[pulsar] branch master updated: Close namespace clients when
PulsarService is closed (#10196)
This is an automated email from the ASF dual-hosted git repository.
eolivelli 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 fad2bcd Close namespace clients when PulsarService is closed (#10196)
fad2bcd is described below
commit fad2bcdd7839d7d3803942d0f11a1a30bce94e9b
Author: Lari Hotari <lh...@users.noreply.github.com>
AuthorDate: Thu Apr 15 12:41:38 2021 +0300
Close namespace clients when PulsarService is closed (#10196)
---
.../main/java/org/apache/pulsar/broker/PulsarService.java | 5 ++++-
.../apache/pulsar/broker/namespace/NamespaceService.java | 14 +++++++++++++-
2 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/pulsar-broker/src/main/java/org/apache/pulsar/broker/PulsarService.java b/pulsar-broker/src/main/java/org/apache/pulsar/broker/PulsarService.java
index 45d7fd8..7d7787c 100644
--- a/pulsar-broker/src/main/java/org/apache/pulsar/broker/PulsarService.java
+++ b/pulsar-broker/src/main/java/org/apache/pulsar/broker/PulsarService.java
@@ -397,7 +397,10 @@ public class PulsarService implements AutoCloseable {
client = null;
}
- nsService = null;
+ if (nsService != null) {
+ nsService.close();
+ nsService = null;
+ }
if (compactorExecutor != null) {
compactorExecutor.shutdown();
diff --git a/pulsar-broker/src/main/java/org/apache/pulsar/broker/namespace/NamespaceService.java b/pulsar-broker/src/main/java/org/apache/pulsar/broker/namespace/NamespaceService.java
index c55a6de..ffb3de0 100644
--- a/pulsar-broker/src/main/java/org/apache/pulsar/broker/namespace/NamespaceService.java
+++ b/pulsar-broker/src/main/java/org/apache/pulsar/broker/namespace/NamespaceService.java
@@ -71,6 +71,7 @@ import org.apache.pulsar.broker.web.PulsarWebResource;
import org.apache.pulsar.client.admin.PulsarAdmin;
import org.apache.pulsar.client.api.ClientBuilder;
import org.apache.pulsar.client.api.PulsarClient;
+import org.apache.pulsar.client.api.PulsarClientException;
import org.apache.pulsar.client.impl.ClientBuilderImpl;
import org.apache.pulsar.client.impl.PulsarClientImpl;
import org.apache.pulsar.client.impl.conf.ClientConfigurationData;
@@ -114,7 +115,7 @@ import org.slf4j.LoggerFactory;
*
* @see org.apache.pulsar.broker.PulsarService
*/
-public class NamespaceService {
+public class NamespaceService implements AutoCloseable {
public enum AddressType {
BROKER_URL, LOOKUP_URL
@@ -1388,4 +1389,15 @@ public class NamespaceService {
}
});
}
+
+ @Override
+ public void close() {
+ namespaceClients.forEach((cluster, client) -> {
+ try {
+ client.shutdown();
+ } catch (PulsarClientException e) {
+ LOG.warn("Error shutting down namespace client for cluster {}", cluster, e);
+ }
+ });
+ }
}