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

JDK16 fixes and workarounds that should make the EA job pass #17053

Merged
merged 10 commits into from
May 7, 2021
Merged

JDK16 fixes and workarounds that should make the EA job pass #17053

merged 10 commits into from
May 7, 2021

Conversation

famod
Copy link
Member

@famod famod commented May 6, 2021

First step for #16195.
See also: https://quarkusio.zulipchat.com/#narrow/stream/187038-dev/topic/Quarkus.20tested.20on.20Java.2016/near/237676424

I tried to divide everything in commits than can be addressed individually later, e.g. when fault-tolerance is fixed that one commit could be reverted.

I think the most controversial commit is the first one with --add-opens.
After a chat with @aloubyansky I decided to at least make sure it isn't propagated to tests via MAVEN_OPTS (which might spawn their own mvn subprocesses).
I suggest to keep excludedEnvironmentVariables permanently because I think we generally don't want that propagation (until further notice).
I'm currently testing a --illegal-access=warn alternative to that --add-opens but I'm not convinced it's that much better.

For that tmpdir commit see #16195 (comment) and #16195 (comment). It's a bit of a mess currently but I didn't see a better solution until something in jboss-parent and/or Surefire changes.

@quarkus-bot quarkus-bot bot added area/arc Issue related to ARC (dependency injection) area/cli Related to quarkus cli (not maven/gradle/etc.) area/dependencies Pull requests that update a dependency file area/devtools Issues/PR related to maven, gradle, platform and cli tooling/plugins area/infra-automation anything related to CI, bots, etc. that are used to automated our infrastructure area/kotlin area/kubernetes area/platform Issues related to definition and interaction with Quarkus Platform area/security labels May 6, 2021
@famod
Copy link
Member Author

famod commented May 6, 2021

Just pinging a few people to take notice that there are things to fix for JDK16:

I'm planning on creating issues for each "area" but I really don't mind if you create those issues yourself. 😉

@quarkus-bot
Copy link

quarkus-bot bot commented May 6, 2021

This workflow status is outdated as a new workflow run has been triggered.

🚫 This workflow run has been cancelled.

Failing Jobs - Building ac02b37

⚠️ Artifacts of the workflow run were not available thus the report misses some details.

Status Name Step Test failures Logs Raw logs
Devtools Tests - JDK 11 Windows Build ⚠️ Check → Logs Raw logs
Gradle Tests - JDK 11 Linux Build ⚠️ Check → Logs Raw logs
Gradle Tests - JDK 11 Windows Build ⚠️ Check → Logs Raw logs
JVM Tests - JDK 11 Build ⚠️ Check → Logs Raw logs
JVM Tests - JDK 11 Windows Build ⚠️ Check → Logs Raw logs
JVM Tests - JDK 15 Build ⚠️ Check → Logs Raw logs
Maven Tests - JDK 11 Build ⚠️ Check → Logs Raw logs
Maven Tests - JDK 11 Windows Build ⚠️ Check → Logs Raw logs
MicroProfile TCKs Tests Verify ⚠️ Check → Logs Raw logs
Native Tests - Amazon Set up JDK 11 ⚠️ Check → Logs Raw logs
Native Tests - Cache ⚠️ Check → Logs Raw logs
Native Tests - Data1 Build ⚠️ Check → Logs Raw logs
Native Tests - Data2 Build ⚠️ Check → Logs Raw logs
Native Tests - Data3 Build ⚠️ Check → Logs Raw logs
Native Tests - Data4 Build ⚠️ Check → Logs Raw logs
Native Tests - Data5 Build ⚠️ Check → Logs Raw logs
Native Tests - Data6 Build ⚠️ Check → Logs Raw logs
Native Tests - Data7 Build ⚠️ Check → Logs Raw logs
Native Tests - HTTP ⚠️ Check → Logs Raw logs
Native Tests - Messaging1 ⚠️ Check → Logs Raw logs
Native Tests - Messaging2 ⚠️ Check → Logs Raw logs
Native Tests - Misc1 ⚠️ Check → Logs Raw logs
Native Tests - Misc2 ⚠️ Check → Logs Raw logs
Native Tests - Misc3 ⚠️ Check → Logs Raw logs
Native Tests - Misc4 ⚠️ Check → Logs Raw logs
Native Tests - Security1 ⚠️ Check → Logs Raw logs
Native Tests - Security2 ⚠️ Check → Logs Raw logs
Native Tests - Security3 ⚠️ Check → Logs Raw logs
Native Tests - Spring ⚠️ Check → Logs Raw logs
Native Tests - Windows - hibernate-validator ⚠️ Check → Logs Raw logs
Native Tests - gRPC ⚠️ Check → Logs Raw logs

@Tibor17
Copy link
Contributor

Tibor17 commented May 6, 2021

@famod
I introduced excludedEnvironmentVariables exactly because we in Apace Maven also had problems with MAVEN_OPTS in our Jenkins builds.

<excludedEnvironmentVariables>MAVEN_OPTS</excludedEnvironmentVariables>

@famod
Copy link
Member Author

famod commented May 6, 2021

@Tibor17 thanks, good to know!

@quarkus-bot
Copy link

quarkus-bot bot commented May 6, 2021

This workflow status is outdated as a new workflow run has been triggered.

🚫 This workflow run has been cancelled.

Failing Jobs - Building 5c3095a

⚠️ Artifacts of the workflow run were not available thus the report misses some details.

Status Name Step Test failures Logs Raw logs
JVM Tests - JDK 11 Build ⚠️ Check → Logs Raw logs
JVM Tests - JDK 11 Windows Build ⚠️ Check → Logs Raw logs
JVM Tests - JDK 15 Build ⚠️ Check → Logs Raw logs
Native Tests - Misc1 Build ⚠️ Check → Logs Raw logs

@quarkus-bot
Copy link

quarkus-bot bot commented May 7, 2021

This workflow status is outdated as a new workflow run has been triggered.

Failing Jobs - Building 3f3075e

Status Name Step Test failures Logs Raw logs
Gradle Tests - JDK 11 Windows Build Test failures Logs Raw logs
✔️ JVM Tests - JDK 11
JVM Tests - JDK 11 Windows Build ⚠️ Check → Logs Raw logs
✔️ JVM Tests - JDK 15

Full information is available in the Build summary check run.

Test Failures

⚙️ Gradle Tests - JDK 11 Windows #

📦 integration-tests/gradle

io.quarkus.gradle.devmode.QuarkusDevDependencyDevModeTest.main() line 14 - More details - Source on GitHub

@geoand
Copy link
Contributor

geoand commented May 7, 2021

I remember you mentioned that a new xstream version that fixes this problem is in the works, right?

@famod
Copy link
Member Author

famod commented May 7, 2021

@geoand I hope things will be better with 1.5 but no clue when that will be released.
I'll give current master a try next week or so.

@famod
Copy link
Member Author

famod commented May 7, 2021

@aloubyansky There is one last problem in the EA job (in my fork): Since I didn't commit my MAVEN_OPTS hack in BootstrapMavenOptions to filter out --add-opens ..., the platform-descriptor-tests profile in integration-tests/maven fails with that command line parsing problem (while executing quarkus-platform-descriptor-json-plugin).
Do you have major objections to setting -Dno-descriptor-tests in the EA job and the JDK16 CI jobs that I'm about to introduce?
IMO this is a bearable workaround until #16862 is fixed or Kotlin is upgraded via #16806.

/cc @gsmet

Edit: Regular CI is not affected since we currently only run those Maven ITs on JDK 11.

@aloubyansky
Copy link
Member

No objections @famod Thanks!

@quarkus-bot
Copy link

quarkus-bot bot commented May 7, 2021

This workflow status is outdated as a new workflow run has been triggered.

🚫 This workflow run has been cancelled.

Failing Jobs - Building 38d5beb

⚠️ Artifacts of the workflow run were not available thus the report misses some details.

Status Name Step Test failures Logs Raw logs
Initial JDK 11 Build Reclaim Disk Space ⚠️ Check → Logs Raw logs
🚫 Calculate Test Jobs
🚫 Devtools Tests - JDK ${{ matrix.java.name }}
🚫 Devtools Tests - JDK 11 Windows
🚫 Gradle Tests - JDK 11 ${{ matrix.os.family }}
🚫 JVM Tests - JDK ${{ matrix.java.name }}
🚫 JVM Tests - JDK 11 Windows
🚫 Maven Tests - JDK ${{ matrix.java.name }}
🚫 Maven Tests - JDK 11 Windows
🚫 MicroProfile TCKs Tests
🚫 Native Tests - ${{ matrix.category }}

Copy link
Contributor

@gastaldi gastaldi left a comment

Choose a reason for hiding this comment

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

LGTM, I'll let @gsmet in charge of pushing the big green merge button 😉

@famod
Copy link
Member Author

famod commented May 7, 2021

EA job passed completely in my fork: https://github.com/famod/quarkus/actions/runs/819992102

Copy link
Member

@gsmet gsmet left a comment

Choose a reason for hiding this comment

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

Nice work, thanks a lot for this!

@gsmet gsmet merged commit fcf8d43 into quarkusio:main May 7, 2021
@quarkus-bot quarkus-bot bot added this to the 2.0 - main milestone May 7, 2021
@famod famod linked an issue May 7, 2021 that may be closed by this pull request
16 tasks
@famod famod deleted the jdk16-fixes branch May 7, 2021 20:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/arc Issue related to ARC (dependency injection) area/cli Related to quarkus cli (not maven/gradle/etc.) area/dependencies Pull requests that update a dependency file area/devtools Issues/PR related to maven, gradle, platform and cli tooling/plugins area/infra-automation anything related to CI, bots, etc. that are used to automated our infrastructure area/kotlin area/kubernetes area/platform Issues related to definition and interaction with Quarkus Platform area/security
Projects
None yet
Development

Successfully merging this pull request may close these issues.

CI: replace JDK 15 with 16
6 participants