From 0b333ed42bc3b87b44a5b9d2898c177ddcec6b86 Mon Sep 17 00:00:00 2001 From: falin luo <65234479+MEILIDEKCL@users.noreply.github.com> Date: Thu, 28 Jul 2022 12:20:40 +0800 Subject: [PATCH 1/2] add pre-check of cachetimeout --- .../src/main/java/org/apache/hadoop/security/Groups.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/Groups.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/Groups.java index 1b3adc14283ee..65de5a1a0cccc 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/Groups.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/Groups.java @@ -130,7 +130,11 @@ public Groups(Configuration conf, final Timer timer) { CommonConfigurationKeys. HADOOP_SECURITY_GROUPS_CACHE_BACKGROUND_RELOAD_THREADS_DEFAULT); parseStaticMapping(conf); - + if(cacheTimeout<=0){ + throw new IllegalArgumentException( + "hadoop.security.groups.cache.secs should be larger than 0", + new IllegalArgumentException("hadoop.security.groups.cache.secs should be larger than 0")); + } this.timer = timer; this.cache = CacheBuilder.newBuilder() .refreshAfterWrite(cacheTimeout, TimeUnit.MILLISECONDS) From 6fb4e86a631c49681297ed8194d40880ae7c3664 Mon Sep 17 00:00:00 2001 From: falin luo <65234479+MEILIDEKCL@users.noreply.github.com> Date: Thu, 28 Jul 2022 12:26:36 +0800 Subject: [PATCH 2/2] Update TestGroupsCaching.java --- .../test/java/org/apache/hadoop/security/TestGroupsCaching.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/security/TestGroupsCaching.java b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/security/TestGroupsCaching.java index 87788691f6d1b..25b2ca0eb1efd 100644 --- a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/security/TestGroupsCaching.java +++ b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/security/TestGroupsCaching.java @@ -219,7 +219,7 @@ public static void resetRequestCount() { @Test public void testGroupsCaching() throws Exception { - // Disable negative cache. + // Disable zero cache. conf.setLong( CommonConfigurationKeys.HADOOP_SECURITY_GROUPS_NEGATIVE_CACHE_SECS, 0); Groups groups = new Groups(conf);