Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Modernize and consolidate JDKs usage across all stages of the build #1351

Open
3 of 5 tasks
reta opened this issue Oct 8, 2021 · 3 comments
Open
3 of 5 tasks

Modernize and consolidate JDKs usage across all stages of the build #1351

reta opened this issue Oct 8, 2021 · 3 comments
Labels
enhancement Enhancement or improvement to existing feature or request

Comments

@reta
Copy link
Collaborator

reta commented Oct 8, 2021

Is your feature request related to a problem? Please describe.
The OpenSearch uses at least 4 different JDK versions at the different stages of build process: 8, 11, 14 and 15. While 8/11/14 have to be preinstalled by user / developer, the JDK-15 distribution [1] is fetched from the AdoptOpenJDK project, which is not supported anymore and has moved to Eclipse Foundation under Adoptium project [2]. Both 14 and 15 are effectively dead and are superseded by JDK-17 LTS [3] release.

[1] https://github.com/opensearch-project/OpenSearch/blob/main/buildSrc/version.properties
[2] https://adoptium.net/
[3] https://openjdk.java.net/projects/jdk/17/

Describe the solution you'd like
Reduce the number of required JDK versions to 8, 11 and 17. Use the Adoptium distributions as bundled JDK version to run tests (ideally, we should end up with 8 and 17 but 11 is still used widely).

Describe alternatives you've considered
Keep things as-is.

Additional context
JDK-17 is the next LTS release. The expectations are that OpenSearch should be able to run under JDK-17 and benefit from a number of performance and security improvements. The quite an impaction change for OpenSearch project is deprecation of the SecurityManager (JEP-411), so the JVM issues following warnings:

WARNING: System::setSecurityManager will be removed in a future release
@reta reta added the enhancement Enhancement or improvement to existing feature or request label Oct 8, 2021
@reta
Copy link
Collaborator Author

reta commented Oct 8, 2021

@dblock @nknize @tlfeng curious if it makes sense to you guys, thank you

@reta reta changed the title Modernize and consolidate JDKs usage accross all stages of the build Modernize and consolidate JDKs usage across all stages of the build Oct 8, 2021
@jcgraybill
Copy link

Related #1276

@dblock
Copy link
Member

dblock commented Oct 11, 2021

💯

I think your plan is good. My 0.02c is that we should be building and packaging all official bits with 11, and testing on 8, 11 and 17. I'm good with developers using 17.

Note that we need to propagate this change to all plugins, so whatever we do must be documented in a reusable way in https://github.com/opensearch-project/opensearch-plugins.

Related, opensearch-project/opensearch-build#74 and https://github.com/opensearch-project/opensearch-build/blob/main/Jenkinsfile#L40

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Enhancement or improvement to existing feature or request
Projects
None yet
Development

No branches or pull requests

3 participants