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
8240903: Add test to check that jmod hashes are reproducible #7948
Conversation
|
Webrevs
|
The existing tests for the jmod tool are in test/jdk/tools/jmod. HashesTest.java might provide inspiration to avoid introducing a shell test. |
Hi, Alan I have rewritten this test in Java in the latest commit. |
@AlanBateman Could you please take another look? |
I think this looks okay. Can you say how long the test runs for you? It creates 130 JMOD files and I'm just wondering if the default timeout is enough when running with debug builds. |
The following is the test result on linux x86 with 128 cores, it looks ok. time make CONF=release run-test TEST=test/jdk/tools/jmod/hashes/HashesOrderTest.java
Finished building target 'run-test' in configuration 'linux-x86_64-server-release'
real 0m24.235s
user 0m52.196s
sys 0m7.170s
time make CONF=slowdebug run-test TEST=test/jdk/tools/jmod/hashes/HashesOrderTest.java
real 2m2.877s
user 5m58.887s
sys 0m10.474s |
Thanks for the timings. I mostly asked because we've had issues with I/O heavy tests on older macOS tests in our CI. Several tests have had to be dialled down or configured to run with very large timeouts. We'll have to see how this one fares. |
@dongbohe This change now passes all automated pre-integration checks. After integration, the commit message for the final commit will be:
You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been 208 new commits pushed to the
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details. As you do not have Committer status in this project an existing Committer must agree to sponsor your change. Possible candidates are the reviewers of this PR (@AlanBateman) but any other Committer may sponsor as well.
|
Thank you for your review, Alan. |
/sponsor |
Going to push as commit 9695283.
Your commit was automatically rebased without conflicts. |
@RealFYang @dongbohe Pushed as commit 9695283. |
This creates a regression test for JDK-8240734. This was once blocked
by a time stamp issue which has been resolved by: JDK-8276766
We found the issue can be produced stably with at least 64 modules.
Note that we need to add the --date jmod option to avoid the timestamp issue.
Testing:
Added test case fails without fix for JDK-8240734, and passes otherwise.
Tested with tier2 on linux x86.
Progress
Issue
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.java.net/jdk pull/7948/head:pull/7948
$ git checkout pull/7948
Update a local copy of the PR:
$ git checkout pull/7948
$ git pull https://git.openjdk.java.net/jdk pull/7948/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 7948
View PR using the GUI difftool:
$ git pr show -t 7948
Using diff file
Download this PR as a diff file:
https://git.openjdk.java.net/jdk/pull/7948.diff