Use proper Java version for BWC builds#29493
Merged
jasontedor merged 5 commits intoelastic:masterfrom Apr 13, 2018
Merged
Conversation
Today we have JAVA_HOME for the compiler Java home and RUNTIME_JAVA_HOME for the test Java home. However, when we compile BWC nodes and run them, neither of these Java homes might be the version that was suitable for that BWC node (e.g., 5.6 requires JDK 8 to compile and to run). This commit adds support for the environment variables JAVA\d+_HOME and uses the appropriate Java home based on the version of the node being started. We even do this for reindex-from-old which requires JDK 7 for these very old nodes. Note that these environment variables are not required if not running BWC tests, and they are strictly required if running BWC tests.
Collaborator
|
Pinging @elastic/es-core-infra |
rjernst
approved these changes
Apr 12, 2018
Member
rjernst
left a comment
There was a problem hiding this comment.
Lgtm. Thanks for all the strict checks.
| env = ['JAVA_HOME': project.runtimeJavaHome] | ||
| final String javaHome | ||
| final Map<Integer, JavaVersion> javaVersions = project.javaVersions | ||
| if (Version.fromString(nodeVersion).before("6.2.0")) { |
Member
There was a problem hiding this comment.
Can we change nodeVersion so it is a Version instead of String so we don't have to parse many times during configuration of every node in gradle?
Member
Author
There was a problem hiding this comment.
Sure; I will address this in a follow-up PR.
* master: Fix NPE in InternalGeoCentroidTests#testReduceRandom (elastic#29481) Build: introduce keystoreFile for cluster config (elastic#29491) test: Index more docs, so that it is less likely the search request does not time out.
Member
Author
|
run the packaging tests |
Member
Author
|
run the packaging sample tests |
Member
Author
|
run the sample packaging tests |
1 similar comment
Member
Author
|
run the sample packaging tests |
* master: Enable skipping fetching latest for BWC builds (elastic#29497) Add remote cluster client (elastic#29495) Ensure flush happens on shard idle Adds SpanGapQueryBuilder in the query DSL (elastic#28636) Control max size and count of warning headers (elastic#28427) Make index APIs work without types. (elastic#29479) Deprecate filtering on `_type`. (elastic#29468) Fix auto-generated ID example format (elastic#29461) Fix typo in max number of threads check docs (elastic#29469) Add primary term to translog header (elastic#29227) Add a helper method to get a random java.util.TimeZone (elastic#29487) Move TimeValue into elasticsearch-core project (elastic#29486)
jasontedor
added a commit
that referenced
this pull request
Apr 13, 2018
Today we have JAVA_HOME for the compiler Java home and RUNTIME_JAVA_HOME for the test Java home. However, when we compile BWC nodes and run them, neither of these Java homes might be the version that was suitable for that BWC node (e.g., 5.6 requires JDK 8 to compile and to run). This commit adds support for the environment variables JAVA\d+_HOME and uses the appropriate Java home based on the version of the node being started. We even do this for reindex-from-old which requires JDK 7 for these very old nodes. Note that these environment variables are not required if not running BWC tests, and they are strictly required if running BWC tests.
jasontedor
added a commit
that referenced
this pull request
Apr 16, 2018
* 6.x: [TEST] REST client request without leading '/' (#29471) Prevent accidental changes of default values (#29528) [Docs] Add definitions to glossary (#29127) Avoid self-deadlock in the translog (#29520) Minor cleanup in NodeInfo.groovy Lazy configure build tasks that require older JDKs (#29519) Fix usage of NodeInfo#nodeVersion in build Control max size/count of warning headers (#28427) (#29516) Simplify snapshot check in root build file Make NodeInfo#nodeVersion strongly-typed as Version (#29515) Enable license header exclusions (#29379) Use proper Java version for BWC builds (#29493) Mute TranslogTests#testFatalIOExceptionsWhileWritingConcurrently
jasontedor
added a commit
that referenced
this pull request
Apr 16, 2018
* master: [TEST] REST client request without leading '/' (#29471) Using ObjectParser in UpdateRequest (#29293) Prevent accidental changes of default values (#29528) [Docs] Add definitions to glossary (#29127) Avoid self-deadlock in the translog (#29520) Minor cleanup in NodeInfo.groovy Lazy configure build tasks that require older JDKs (#29519) Simplify snapshot check in root build file Make NodeInfo#nodeVersion strongly-typed as Version (#29515) Enable license header exclusions (#29379) Use proper Java version for BWC builds (#29493) Mute TranslogTests#testFatalIOExceptionsWhileWritingConcurrently Enable skipping fetching latest for BWC builds (#29497)
jasontedor
added a commit
to jasontedor/elasticsearch
that referenced
this pull request
Apr 17, 2018
* master: (96 commits) TEST: Mute testEnsureWeReconnect Mute full cluster restart test recovery test REST high-level client: add support for Indices Update Settings API [take 2] (elastic#29327) Plugins: Fix native controller confirmation for non-meta plugin (elastic#29434) Remove PipelineExecutionService#executeIndexRequest (elastic#29537) Fix overflow error in parsing of long geohashes (elastic#29418) Remove unused index.ttl.disable_purge setting (elastic#29527) FullClusterRestartIT.testRecovery should wait for all initializing shards Build: Fail if any libs depend on non-core libs (elastic#29336) [TEST] REST client request without leading '/' (elastic#29471) Using ObjectParser in UpdateRequest (elastic#29293) Prevent accidental changes of default values (elastic#29528) [Docs] Add definitions to glossary (elastic#29127) Avoid self-deadlock in the translog (elastic#29520) Minor cleanup in NodeInfo.groovy Lazy configure build tasks that require older JDKs (elastic#29519) Simplify snapshot check in root build file Make NodeInfo#nodeVersion strongly-typed as Version (elastic#29515) Enable license header exclusions (elastic#29379) Use proper Java version for BWC builds (elastic#29493) ...
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Today we have JAVA_HOME for the compiler Java home and RUNTIME_JAVA_HOME for the test Java home. However, when we compile BWC nodes and run them, neither of these Java homes might be the version that was suitable for that BWC node (e.g., 5.6 requires JDK 8 to compile and to run). This commit adds support for the environment variables JAVA\d+_HOME and uses the appropriate Java home based on the version of the node being started. We even do this for reindex-from-old which requires JDK 7 for these very old nodes. Note that these environment variables are not required if not running BWC tests, and they are strictly required if running BWC tests.