From 4ab6432f237ae8c9cbe0133bb80b81a60485150a Mon Sep 17 00:00:00 2001 From: iguissouma Date: Tue, 28 May 2019 17:04:51 +0200 Subject: [PATCH] Use try with resources when creating AdminClient Use try with resources when creating AdminClient to release all associated resources. Fixes gh-660 --- .../binder/kafka/provisioning/KafkaTopicProvisioner.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/spring-cloud-stream-binder-kafka-core/src/main/java/org/springframework/cloud/stream/binder/kafka/provisioning/KafkaTopicProvisioner.java b/spring-cloud-stream-binder-kafka-core/src/main/java/org/springframework/cloud/stream/binder/kafka/provisioning/KafkaTopicProvisioner.java index a39be10b6..d165d7192 100644 --- a/spring-cloud-stream-binder-kafka-core/src/main/java/org/springframework/cloud/stream/binder/kafka/provisioning/KafkaTopicProvisioner.java +++ b/spring-cloud-stream-binder-kafka-core/src/main/java/org/springframework/cloud/stream/binder/kafka/provisioning/KafkaTopicProvisioner.java @@ -466,11 +466,11 @@ public class KafkaTopicProvisioner implements // In some cases, the above partition query may not throw an UnknownTopic..Exception for various reasons. // For that, we are forcing another query to ensure that the topic is present on the server. if (CollectionUtils.isEmpty(partitions)) { - final AdminClient adminClient = AdminClient - .create(this.adminClientProperties); - final DescribeTopicsResult describeTopicsResult = adminClient + try (AdminClient adminClient = AdminClient + .create(this.adminClientProperties)) { + final DescribeTopicsResult describeTopicsResult = adminClient .describeTopics(Collections.singletonList(topicName)); - try { + describeTopicsResult.all().get(); } catch (ExecutionException ex) {