Repository: hadoop Updated Branches: refs/heads/branch-2.7 9a111fcd1 -> d665d11f9
HADOOP-11815. HttpServer2 should destroy SignerSecretProvider when it stops. Contributed by Rohith. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/d665d11f Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/d665d11f Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/d665d11f Branch: refs/heads/branch-2.7 Commit: d665d11f9937383d1d703cad38671c912252f338 Parents: 9a111fc Author: Haohui Mai <whe...@apache.org> Authored: Thu Apr 9 10:58:12 2015 -0700 Committer: Haohui Mai <whe...@apache.org> Committed: Thu Apr 9 10:58:31 2015 -0700 ---------------------------------------------------------------------- hadoop-common-project/hadoop-common/CHANGES.txt | 5 ++++- .../src/main/java/org/apache/hadoop/http/HttpServer2.java | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/d665d11f/hadoop-common-project/hadoop-common/CHANGES.txt ---------------------------------------------------------------------- diff --git a/hadoop-common-project/hadoop-common/CHANGES.txt b/hadoop-common-project/hadoop-common/CHANGES.txt index a4605ac..616febc 100644 --- a/hadoop-common-project/hadoop-common/CHANGES.txt +++ b/hadoop-common-project/hadoop-common/CHANGES.txt @@ -729,7 +729,10 @@ Release 2.7.0 - UNRELEASED HADOOP-11796. Skip TestShellBasedIdMapping.testStaticMapUpdate on Windows. (Xiaoyu Yao via cnauroth) - + + HADOOP-11815. HttpServer2 should destroy SignerSecretProvider when it + stops. (Rohith via wheat9) + Release 2.6.1 - UNRELEASED INCOMPATIBLE CHANGES http://git-wip-us.apache.org/repos/asf/hadoop/blob/d665d11f/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/http/HttpServer2.java ---------------------------------------------------------------------- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/http/HttpServer2.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/http/HttpServer2.java index 39d14d8..11ab23b 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/http/HttpServer2.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/http/HttpServer2.java @@ -140,6 +140,7 @@ public final class HttpServer2 implements FilterContainer { protected final List<String> filterNames = new ArrayList<>(); static final String STATE_DESCRIPTION_ALIVE = " - alive"; static final String STATE_DESCRIPTION_NOT_LIVE = " - not live"; + private final SignerSecretProvider secretProvider; /** * Class to construct instances of HTTP server with specific options. @@ -335,7 +336,7 @@ public final class HttpServer2 implements FilterContainer { this.adminsAcl = b.adminsAcl; this.webAppContext = createWebAppContext(b.name, b.conf, adminsAcl, appDir); try { - SignerSecretProvider secretProvider = + this.secretProvider = constructSecretProvider(b, webAppContext.getServletContext()); this.webAppContext.getServletContext().setAttribute (AuthenticationFilter.SIGNER_SECRET_PROVIDER_ATTRIBUTE, @@ -945,6 +946,8 @@ public final class HttpServer2 implements FilterContainer { } try { + // explicitly destroy the secrete provider + secretProvider.destroy(); // clear & stop webAppContext attributes to avoid memory leaks. webAppContext.clearAttributes(); webAppContext.stop();