From 5b1c3fa12cbe1efa39e42f3896e62696e4c5aab3 Mon Sep 17 00:00:00 2001 From: sanjaypujare Date: Mon, 24 May 2021 12:45:01 -0700 Subject: [PATCH] xds: shutDown the scheduledExecutorService when the provider is shutdown (#8198) --- .../internal/certprovider/FileWatcherCertificateProvider.java | 1 + .../certprovider/FileWatcherCertificateProviderTest.java | 1 + 2 files changed, 2 insertions(+) diff --git a/xds/src/main/java/io/grpc/xds/internal/certprovider/FileWatcherCertificateProvider.java b/xds/src/main/java/io/grpc/xds/internal/certprovider/FileWatcherCertificateProvider.java index bbcb521c0d..b86de55766 100644 --- a/xds/src/main/java/io/grpc/xds/internal/certprovider/FileWatcherCertificateProvider.java +++ b/xds/src/main/java/io/grpc/xds/internal/certprovider/FileWatcherCertificateProvider.java @@ -82,6 +82,7 @@ final class FileWatcherCertificateProvider extends CertificateProvider implement @Override public synchronized void close() { shutdown = true; + scheduledExecutorService.shutdownNow(); if (scheduledFuture != null) { scheduledFuture.cancel(true); scheduledFuture = null; diff --git a/xds/src/test/java/io/grpc/xds/internal/certprovider/FileWatcherCertificateProviderTest.java b/xds/src/test/java/io/grpc/xds/internal/certprovider/FileWatcherCertificateProviderTest.java index 474c05d048..7ecc02a99e 100644 --- a/xds/src/test/java/io/grpc/xds/internal/certprovider/FileWatcherCertificateProviderTest.java +++ b/xds/src/test/java/io/grpc/xds/internal/certprovider/FileWatcherCertificateProviderTest.java @@ -180,6 +180,7 @@ public class FileWatcherCertificateProviderTest { .updateCertificate(any(PrivateKey.class), ArgumentMatchers.anyList()); verify(mockWatcher, never()).updateTrustedRoots(ArgumentMatchers.anyList()); verify(timeService, never()).schedule(any(Runnable.class), any(Long.TYPE), any(TimeUnit.class)); + verify(timeService, times(1)).shutdownNow(); }