Repository: hadoop Updated Branches: refs/heads/branch-2 73d9e4c77 -> f753e2043
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/f753e204 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/f753e204 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/f753e204 Branch: refs/heads/branch-2 Commit: f753e2043bd1fc7bfa17b40196eed14ffe075cff Parents: 73d9e4c 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:20 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/f753e204/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 70a1840..b0bbef9 100644 --- a/hadoop-common-project/hadoop-common/CHANGES.txt +++ b/hadoop-common-project/hadoop-common/CHANGES.txt @@ -799,7 +799,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/f753e204/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();