[ https://issues.apache.org/jira/browse/HADOOP-18329?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17645622#comment-17645622 ]
ASF GitHub Bot commented on HADOOP-18329: ----------------------------------------- steveloughran commented on code in PR #4537: URL: https://github.com/apache/hadoop/pull/4537#discussion_r1045091286 ########## hadoop-common-project/hadoop-minikdc/src/test/java/org/apache/hadoop/minikdc/TestMiniKdc.java: ########## @@ -38,8 +38,35 @@ import java.util.Arrays; public class TestMiniKdc extends KerberosSecurityTestcase { - private static final boolean IBM_JAVA = System.getProperty("java.vendor") - .contains("IBM"); + private static final boolean IBM_JAVA = shouldUseIbmPackages(); + // duplicated to avoid cycles in the build + private static boolean shouldUseIbmPackages() { + final List<String> ibmTechnologyEditionSecurityModules = Arrays.asList( + "com.ibm.security.auth.module.JAASLoginModule", + "com.ibm.security.auth.module.Win64LoginModule", + "com.ibm.security.auth.module.NTLoginModule", + "com.ibm.security.auth.module.AIX64LoginModule", + "com.ibm.security.auth.module.LinuxLoginModule", + "com.ibm.security.auth.module.Krb5LoginModule" + ); + + if (System.getProperty("java.vendor").contains("IBM")) { + return ibmTechnologyEditionSecurityModules + .stream().anyMatch((module) -> isSystemClassAvailable(module)); + } + + return false; + } + + private static boolean isSystemClassAvailable(String className) { Review Comment: ahh, lets keep it simple for now > Add support for IBM Semeru OE JRE 11.0.15.0 and greater > ------------------------------------------------------- > > Key: HADOOP-18329 > URL: https://issues.apache.org/jira/browse/HADOOP-18329 > Project: Hadoop Common > Issue Type: Bug > Components: auth, common > Affects Versions: 3.0.0, 3.1.0, 3.0.1, 3.2.0, 3.0.2, 3.1.1, 3.0.3, 3.3.0, > 3.1.2, 3.2.1, 3.1.3, 3.1.4, 3.2.2, 3.3.1, 3.2.3, 3.3.2, 3.3.3 > Environment: Running Hadoop (or Apache Spark 3.2.1 or above) on IBM > Semeru runtimes open edition 11.0.15.0 or greater. > Reporter: Jack > Priority: Major > Labels: pull-request-available > Original Estimate: 1h > Time Spent: 2.5h > Remaining Estimate: 0h > > There are checks within the PlatformName class that use the Vendor property > of the provided runtime JVM specifically looking for `IBM` within the name. > Whilst this check worked for IBM's [java technology > edition|https://www.ibm.com/docs/en/sdk-java-technology] it fails to work on > [Semeru|https://developer.ibm.com/languages/java/semeru-runtimes/] since > 11.0.15.0 due to the following change: > h4. java.vendor system property > In this release, the {{java.vendor}} system property has been changed from > "International Business Machines Corporation" to "IBM Corporation". > Modules such as the below are not provided in these runtimes. > com.ibm.security.auth.module.JAASLoginModule -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org