HADOOP-18329 - Support for IBM Semeru JVM v>11.0.15.0 Vendor Name Changes #5208
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of PR
Applies patches provided in to branch-3.3 via cherry-picking a merge commit of the proposed changes, eg.
The original change request can be found at #4537
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 it fails to work on Semeru since 11.0.15.0 due to the following change: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 change attempts to use reflection to ensure that a class common to IBM JT runtimes exists, extending upon the vendor check, since IBM vendored JVM's may not actually require special logic to use custom security modules. The same 3.3.3 versions were working correctly until the vendor name change was observed during routine upgrades by internal CI.
How was this patch tested?
CI + Unit test
For code changes:
LICENSE
,LICENSE-binary
,NOTICE-binary
files?