Skip to content

Commit 2694071

Browse files
authored
YARN-11796. Accept extra JDK 17 options in tests (#7512) Contributed by Istvan Toth.
Reviewed-by: Cheng Pan <[email protected]> Signed-off-by: Shilun Fan <[email protected]>
1 parent 3fd404f commit 2694071

File tree

2 files changed

+30
-0
lines changed

2 files changed

+30
-0
lines changed

hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/TestLinuxContainerExecutorWithMocks.java

+8
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@
5353
import org.apache.hadoop.conf.Configuration;
5454
import org.apache.hadoop.fs.FileUtil;
5555
import org.apache.hadoop.fs.Path;
56+
import org.apache.hadoop.util.Shell;
5657
import org.apache.hadoop.util.StringUtils;
5758
import org.apache.hadoop.yarn.api.records.ApplicationAttemptId;
5859
import org.apache.hadoop.yarn.api.records.ApplicationId;
@@ -311,6 +312,13 @@ public void testStartLocalizer() throws IOException {
311312
.build());
312313

313314
List<String> result=readMockParams();
315+
316+
if (Shell.isJavaVersionAtLeast(17)) {
317+
// Added by ContainerLocalizer for JDK17+ (MAPREDUCE-7456)
318+
assertTrue(result.remove("--add-exports=java.base/sun.net.dns=ALL-UNNAMED"));
319+
assertTrue(result.remove("--add-exports=java.base/sun.net.util=ALL-UNNAMED"));
320+
}
321+
314322
assertThat(result).hasSize(26);
315323
assertThat(result.get(0)).isEqualTo(YarnConfiguration.
316324
DEFAULT_NM_NONSECURE_MODE_LOCAL_USER);

hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/TestContainerLocalizer.java

+22
Original file line numberDiff line numberDiff line change
@@ -715,6 +715,7 @@ public void testDefaultJavaOptionsWhenExtraJDK17OptionsAreConfigured() throws Ex
715715
List<String> javaOpts = localizer.getJavaOpts(conf);
716716

717717
if (Shell.isJavaVersionAtLeast(17)) {
718+
// Added by ContainerLocalizer for JDK17+ (MAPREDUCE-7456)
718719
assertTrue(javaOpts.contains("--add-exports=java.base/sun.net.dns=ALL-UNNAMED"));
719720
assertTrue(javaOpts.contains("--add-exports=java.base/sun.net.util=ALL-UNNAMED"));
720721
}
@@ -733,6 +734,7 @@ public void testDefaultJavaOptionsWhenExtraJDK17OptionsAreNotConfigured() throws
733734
List<String> javaOpts = localizer.getJavaOpts(conf);
734735

735736
if (Shell.isJavaVersionAtLeast(17)) {
737+
// Added by ContainerLocalizer for JDK17+ (MAPREDUCE-7456)
736738
assertFalse(javaOpts.contains("--add-exports=java.base/sun.net.dns=ALL-UNNAMED"));
737739
assertFalse(javaOpts.contains("--add-exports=java.base/sun.net.util=ALL-UNNAMED"));
738740
}
@@ -751,6 +753,11 @@ public void testAdminOptionsPrecedeUserDefinedJavaOptions() throws Exception {
751753
" userOption1 userOption2");
752754
List<String> javaOpts = localizer.getJavaOpts(conf);
753755

756+
if (Shell.isJavaVersionAtLeast(17)) {
757+
// Added by ContainerLocalizer for JDK17+ (MAPREDUCE-7456)
758+
assertTrue(javaOpts.remove("--add-exports=java.base/sun.net.dns=ALL-UNNAMED"));
759+
assertTrue(javaOpts.remove("--add-exports=java.base/sun.net.util=ALL-UNNAMED"));
760+
}
754761
assertEquals(4, javaOpts.size());
755762
assertTrue(javaOpts.get(0).equals("adminOption1"));
756763
assertTrue(javaOpts.get(1).equals("adminOption2"));
@@ -768,6 +775,11 @@ public void testAdminOptionsPrecedeDefaultUserOptions() throws Exception {
768775
"adminOption1 adminOption2");
769776
List<String> javaOpts = localizer.getJavaOpts(conf);
770777

778+
if (Shell.isJavaVersionAtLeast(17)) {
779+
// Added by ContainerLocalizer for JDK17+ (MAPREDUCE-7456)
780+
assertTrue(javaOpts.remove("--add-exports=java.base/sun.net.dns=ALL-UNNAMED"));
781+
assertTrue(javaOpts.remove("--add-exports=java.base/sun.net.util=ALL-UNNAMED"));
782+
}
771783
assertEquals(3, javaOpts.size());
772784
assertTrue(javaOpts.get(0).equals("adminOption1"));
773785
assertTrue(javaOpts.get(1).equals("adminOption2"));
@@ -784,6 +796,11 @@ public void testUserOptionsWhenAdminOptionsAreNotDefined() throws Exception {
784796
"userOption1 userOption2");
785797
List<String> javaOpts = localizer.getJavaOpts(conf);
786798

799+
if (Shell.isJavaVersionAtLeast(17)) {
800+
// Added by ContainerLocalizer for JDK17+ (MAPREDUCE-7456)
801+
assertTrue(javaOpts.remove("--add-exports=java.base/sun.net.dns=ALL-UNNAMED"));
802+
assertTrue(javaOpts.remove("--add-exports=java.base/sun.net.util=ALL-UNNAMED"));
803+
}
787804
assertEquals(2, javaOpts.size());
788805
assertTrue(javaOpts.get(0).equals("userOption1"));
789806
assertTrue(javaOpts.get(1).equals("userOption2"));
@@ -797,6 +814,11 @@ public void testJavaOptionsWithoutDefinedAdminOrUserOptions() throws Exception {
797814
Configuration conf = new Configuration();
798815
List<String> javaOpts = localizer.getJavaOpts(conf);
799816

817+
if (Shell.isJavaVersionAtLeast(17)) {
818+
// Added by ContainerLocalizer for JDK17+ (MAPREDUCE-7456)
819+
assertTrue(javaOpts.remove("--add-exports=java.base/sun.net.dns=ALL-UNNAMED"));
820+
assertTrue(javaOpts.remove("--add-exports=java.base/sun.net.util=ALL-UNNAMED"));
821+
}
800822
assertEquals(1, javaOpts.size());
801823
assertTrue(javaOpts.get(0).equals("-Xmx256m"));
802824
}

0 commit comments

Comments
 (0)