Skip to content

Require JDK 17.0.3#13014

Merged
martint merged 3 commits intotrinodb:masterfrom
wendigo:serafin/jdk17-tests
Jul 14, 2022
Merged

Require JDK 17.0.3#13014
martint merged 3 commits intotrinodb:masterfrom
wendigo:serafin/jdk17-tests

Conversation

@wendigo
Copy link
Copy Markdown
Contributor

@wendigo wendigo commented Jun 28, 2022

Documentation

(x) Sufficient documentation is included in this PR.

Release notes

(x) Release notes entries required with the following suggested text:

# General
* Update minimum required Java version to 17.0.3. ({issue}`13014`)

@cla-bot cla-bot bot added the cla-signed label Jun 28, 2022
@wendigo wendigo added tests:hive tests:all Run all tests tests:all-product Run all product tests labels Jun 28, 2022
@wendigo wendigo force-pushed the serafin/jdk17-tests branch from c365159 to 34e6d8d Compare June 28, 2022 11:41
@tangjiangling
Copy link
Copy Markdown
Member

@wendigo Do we have any follow-up plans on the TPC-H or TPC-DS tests to see how upgrading JDK17 affects performance?

@wendigo
Copy link
Copy Markdown
Contributor Author

wendigo commented Jun 28, 2022

@tangjiangling we've already benchmarked Trino on JDK 17 and there are minor improvements and no regressions (which is something that we expected).

We are moving to JDK17 to leverage new APIs and language features, rather than expecting some large performance boost.

@wendigo wendigo force-pushed the serafin/jdk17-tests branch from 34e6d8d to 8aa68c7 Compare June 28, 2022 14:31
@martint
Copy link
Copy Markdown
Member

martint commented Jun 28, 2022

I ran some microbenchmarks a few months ago and observed a 10-15% performance improvement in some code paths, so we expect things to be generally faster.

@wendigo
Copy link
Copy Markdown
Contributor Author

wendigo commented Jun 28, 2022

trino-hive test failed with OOM. Phoenix5 failed as expected - waiting for 5.2 release, which should fix the underlying issue.

@wendigo wendigo force-pushed the serafin/jdk17-tests branch 2 times, most recently from 91ec1ab to b810916 Compare June 30, 2022 12:07
Copy link
Copy Markdown
Member

@kokosing kokosing left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Possibly commits need to be reordered.

@wendigo wendigo force-pushed the serafin/jdk17-tests branch from b810916 to 88beebb Compare June 30, 2022 12:33
@wendigo wendigo changed the title [WIP] Run all tests on JDK 17 Switch all tests on JDK 17 Jun 30, 2022
@wendigo wendigo changed the title Switch all tests on JDK 17 Switch all tests to JDK 17 Jun 30, 2022
@wendigo wendigo force-pushed the serafin/jdk17-tests branch from 88beebb to 303c99d Compare June 30, 2022 14:24
@wendigo wendigo force-pushed the serafin/jdk17-tests branch 3 times, most recently from b992145 to 442106a Compare July 4, 2022 16:29
@wendigo wendigo changed the title Switch all tests to JDK 17 Run all tests to JDK 17 Jul 4, 2022
@mosabua
Copy link
Copy Markdown
Member

mosabua commented Jul 4, 2022

If we switch to run tests on 17 only (as done in this PR).. we should make 17 a requirement in the docs and the launcher .. otherwise we should run on 11 and 17 ..

Personally I think we should make 17 the requirement in the docs now. And in the launcher use a warning that 11 is deprecated and no longer tested. And then in another few releases .. we make 17 the requirement in the launcher as well.

We have been announcing and messaging the move for a while already.

@wendigo
Copy link
Copy Markdown
Contributor Author

wendigo commented Jul 4, 2022

Calling @electrum @martint for the decision here

@wendigo wendigo force-pushed the serafin/jdk17-tests branch 3 times, most recently from 14771c3 to 79ed19e Compare July 9, 2022 12:52
@wendigo
Copy link
Copy Markdown
Contributor Author

wendigo commented Jul 9, 2022

JDK 17.0.3 is required. I've switched Docker to build from official azul jdk image.

@wendigo wendigo requested a review from electrum July 9, 2022 12:55
@wendigo wendigo force-pushed the serafin/jdk17-tests branch from 8920e01 to c884bb9 Compare July 12, 2022 15:42
@wendigo
Copy link
Copy Markdown
Contributor Author

wendigo commented Jul 12, 2022

@martint I've extracted docker change to a separate commit

@wendigo wendigo force-pushed the serafin/jdk17-tests branch from c884bb9 to 53018f8 Compare July 12, 2022 18:20
@martint
Copy link
Copy Markdown
Member

martint commented Jul 12, 2022

The first commit should update the docker image to download and install the new JDK. Otherwise, if we do have to back out the second commit for any reason, the docker images will no longer work without additional changes.

@wendigo wendigo force-pushed the serafin/jdk17-tests branch from 4b202c9 to 7bce3e0 Compare July 13, 2022 17:31
@wendigo
Copy link
Copy Markdown
Contributor Author

wendigo commented Jul 13, 2022

@martint done

@wendigo wendigo force-pushed the serafin/jdk17-tests branch from fc42233 to 1d4f35d Compare July 14, 2022 15:35
@martint martint merged commit da367a3 into trinodb:master Jul 14, 2022
@github-actions github-actions bot added this to the 390 milestone Jul 14, 2022
@wendigo wendigo deleted the serafin/jdk17-tests branch July 14, 2022 17:25
@kokosing
Copy link
Copy Markdown
Member

Yuhuuu! 🎉

-XX:-UseBiasedLocking
-XX:+UseG1GC
-XX:InitialRAMPercentage=80
-XX:MaxRAMPercentage=80
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The removal of -Xmx1G doesn't seem related to Java 17 support and may be a breaking change for users.

-server
-Xmx2G
-XX:-UseBiasedLocking
-XX:+UseG1GC
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove -XX:+UseG1GC as elsewhere?

@wendigo
Copy link
Copy Markdown
Contributor Author

wendigo commented Jul 19, 2022

Thx @findepi. I will do a follow up PR with gc flags cleanup

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla-signed docs tests:all Run all tests tests:all-product Run all product tests

Development

Successfully merging this pull request may close these issues.

9 participants