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

8255352: Archive important test outputs in submit workflow #842

Closed

Conversation

@shipilev
Copy link
Contributor

@shipilev shipilev commented Oct 23, 2020

Currently, we are only archiving build/*/test-results. But hs_errs, replays, and test outputs are actually in build/*/test-support! Which means once any test fails, we only have the summary of the run, not the bits that would actually help to diagnose the problem.

Archiving the entire test-support seems too much, it yields 50K artifacts available as 1 GB zip archive in GH GUI. On top of that upload-artifact does the upload per-file, which takes tens of minutes on 50K files (and I suspect many API calls).

But we can pick up important test outputs selectively and then also compress them. See sample artifact here:
https://github.com/shipilev/jdk/runs/1301540541

It packages the final ZIP like this:

$ unzip -t test-results_.zip
 Archive:  test-results_.zip
    testing: artifact/                OK
    testing: artifact/linux-x64-debug_testresults_hs_tier1_common.zip   OK
    testing: artifact/linux-x64-debug_testsupport_hs_tier1_common.zip   OK
    ...

Progress

  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue
  • Change must be properly reviewed

Testing

Linux x32 Linux x64 Windows x64 macOS x64
Build ✔️ (1/1 passed) ✔️ (5/5 passed) ✔️ (2/2 passed) ✔️ (2/2 passed)
Test (tier1) ✔️ (9/9 passed) ✔️ (9/9 passed) ✔️ (9/9 passed)

Issue

  • JDK-8255352: Archive important test outputs in submit workflow

Reviewers

Download

$ git fetch https://git.openjdk.java.net/jdk pull/842/head:pull/842
$ git checkout pull/842

@bridgekeeper
Copy link

@bridgekeeper bridgekeeper bot commented Oct 23, 2020

👋 Welcome back shade! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

Loading

@openjdk
Copy link

@openjdk openjdk bot commented Oct 23, 2020

@shipilev The following label will be automatically applied to this pull request:

  • build

When this pull request is ready to be reviewed, an "RFR" email will be sent to the corresponding mailing list. If you would like to change these labels, use the /label pull request command.

Loading

@openjdk openjdk bot added the build label Oct 23, 2020
@shipilev shipilev marked this pull request as ready for review Oct 24, 2020
@openjdk openjdk bot added the rfr label Oct 24, 2020
@mlbridge
Copy link

@mlbridge mlbridge bot commented Oct 24, 2020

Webrevs

Loading

Copy link
Member

@rwestberg rwestberg left a comment

Looks good! I also tried including the entire test-support folder at some point, but as you noticed it takes quite a bit of time and space. So this approach seems much better.

Minor comment: The cygwin\bin folder is included twice in PATH on Windows to work around a bug in JTReg (the regex used to detect cygwin does not match the very first entry in the PATH list. Perhaps I should file a bug for that..) but it's not really needed if you are executing something else.

Loading

.github/workflows/submit.yml Outdated Show resolved Hide resolved
Loading
.github/workflows/submit.yml Outdated Show resolved Hide resolved
Loading
shipilev and others added 2 commits Oct 26, 2020
Co-authored-by: Robin Westberg <robin@westberg.se>
Co-authored-by: Robin Westberg <robin@westberg.se>
@shipilev
Copy link
Contributor Author

@shipilev shipilev commented Oct 26, 2020

Thanks! I have not even noticed there is double item in PATH.

Loading

Copy link
Member

@magicus magicus left a comment

Looks good to me.

Loading

@openjdk
Copy link

@openjdk openjdk bot commented Oct 26, 2020

@shipilev This change now passes all automated pre-integration checks.

ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details.

After integration, the commit message for the final commit will be:

8255352: Archive important test outputs in submit workflow

Reviewed-by: rwestberg, ihse

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 22 new commits pushed to the master branch:

  • 888086f: 8255373: Submit workflow artifact name is always "test-results_.zip"
  • 6918818: 8255265: IdealLoopTree::iteration_split_impl does not use should_align
  • c28b011: 8255343: java/util/stream/SpliteratorTest.java fails on 32-bit platforms with "Misaligned access at address: 12"
  • b71b5b4: 8199062: Test javax/swing/text/Utilities/8134721/bug8134721.java is unstable
  • ee34fa5: 8199060: Test javax/swing/text/html/parser/Parser/6990651/bug6990651.java is unstable
  • 93dadbe: 7190589: [macosx] In the test bug4278839 never press ctrl+arrow
  • 57d903b: 8255242: Bidi.requiresBidi has misleading exception message
  • 60d0142: 8255379: ProblemList compiler/loopstripmining/BackedgeNodeWithOutOfLoopControl.java
  • 1a94ebc: 8254112: javax/swing/plaf/basic/BasicComboPopup/JComboBoxPopupLocation/JComboBoxPopupLocation.java fails on windows
  • 69b0172: 8199074: Test javax/swing/DataTransfer/8059739/bug8059739.java is unstable
  • ... and 12 more: https://git.openjdk.java.net/jdk/compare/63ce304ea4d816872b73d36abe42b6debec694a7...master

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.

➡️ To integrate this PR with the above commit message to the master branch, type /integrate in a new comment.

Loading

@openjdk openjdk bot added the ready label Oct 26, 2020
@shipilev
Copy link
Contributor Author

@shipilev shipilev commented Oct 26, 2020

/integrate

Loading

@openjdk openjdk bot closed this Oct 26, 2020
@openjdk openjdk bot added integrated and removed ready rfr labels Oct 26, 2020
@openjdk
Copy link

@openjdk openjdk bot commented Oct 26, 2020

@shipilev Since your change was applied there have been 22 commits pushed to the master branch:

  • 888086f: 8255373: Submit workflow artifact name is always "test-results_.zip"
  • 6918818: 8255265: IdealLoopTree::iteration_split_impl does not use should_align
  • c28b011: 8255343: java/util/stream/SpliteratorTest.java fails on 32-bit platforms with "Misaligned access at address: 12"
  • b71b5b4: 8199062: Test javax/swing/text/Utilities/8134721/bug8134721.java is unstable
  • ee34fa5: 8199060: Test javax/swing/text/html/parser/Parser/6990651/bug6990651.java is unstable
  • 93dadbe: 7190589: [macosx] In the test bug4278839 never press ctrl+arrow
  • 57d903b: 8255242: Bidi.requiresBidi has misleading exception message
  • 60d0142: 8255379: ProblemList compiler/loopstripmining/BackedgeNodeWithOutOfLoopControl.java
  • 1a94ebc: 8254112: javax/swing/plaf/basic/BasicComboPopup/JComboBoxPopupLocation/JComboBoxPopupLocation.java fails on windows
  • 69b0172: 8199074: Test javax/swing/DataTransfer/8059739/bug8059739.java is unstable
  • ... and 12 more: https://git.openjdk.java.net/jdk/compare/63ce304ea4d816872b73d36abe42b6debec694a7...master

Your commit was automatically rebased without conflicts.

Pushed as commit 7cafe35.

💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored.

Loading

@shipilev shipilev deleted the JDK-8255352-archive-test-results branch Oct 26, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
3 participants