Closed adamfarley closed 3 years ago
Slight correction from https://github.com/AdoptOpenJDK/TSC/issues/195#issuecomment-763590351: Nightly test runs were not disabled a week prior to the release, but they were disabled before the release (https://github.com/AdoptOpenJDK/openjdk-build/pull/2392)
Seems like we'd benefit from following a checklist more closely (a proposed checklist https://github.com/AdoptOpenJDK/TSC/issues/178), website banner added by attentive Andreas.
Short list of potentially unresolved actions from previous retrospectives, where actions could be identified. Each to be reviewed during this retrospective, and marked Ignored, Addressed (with link), or Carried over. If all actions in a given retrospective issue have one of these responses, that issue will be closed.
October 2019 - Closed
April 2020 - Open
July 2020 - Open
October 2020 - Open
Note: Any unresolved actions have been folded into the next retrospective for review. Link.
Step 1) Send the link to folks on the #Release Slack channel around the start of the new release. Step 2) Copy actions from the previous retrospective into the new issue, while ignoring actions that have an issue link. Step 3) Announce the retrospective Slack call's date + time at least one full week in advance, and send out meeting invites. Step 4) On the day of the call, compile all of the agenda items into a single-comment, tick-box list. Step 4) Host the slack call for the retrospective, including:
Step 5) Close the issue for the previous retrospective, ensuring that every action that has no issue link is either:
Step 6) Raise a new retrospective issue for the next release. Step 7) Set yourself a calendar reminder so that you remember to commence step 1 (in the new issue) just before the next release.
JTHarness Test Output parameter may need to be lengthed:
...
[2021-01-20T12:59:50.376Z] Output overflow:
[2021-01-20T12:59:50.376Z] JT Harness has limited the test output to the text
[2021-01-20T12:59:50.377Z] at the beginning and the end, so that you can see how the
[2021-01-20T12:59:50.377Z] test began, and how it completed.
[2021-01-20T12:59:50.377Z]
[2021-01-20T12:59:50.377Z] If you need to see more of the output from the test,
[2021-01-20T12:59:50.377Z] set the system property javatest.maxOutputSize to a higher
[2021-01-20T12:59:50.377Z] value. The current value is 100000
[2021-01-20T12:59:50.377Z] ...
IBM RHEL 6 machine missing some pre-reqs for language tests.
[2021-01-18T14:16:48.058Z] Running test MBCS_Tests_pref_ja_JP_linux_0 ...
[2021-01-18T14:16:48.703Z] ===============================================
[2021-01-18T14:16:48.703Z] MBCS_Tests_pref_ja_JP_linux_0 Start Time: Mon Jan 18 08:16:48 2021 Epoch Time (ms): 1610979408049
[2021-01-18T14:16:48.703Z] Nothing to be done for setup.
[2021-01-18T14:16:48.703Z] variation: NoOptions
[2021-01-18T14:16:48.703Z] JVM_OPTIONS:
[2021-01-18T14:16:48.703Z] { itercnt=1; \
[2021-01-18T14:16:48.703Z] mkdir -p "/home/jenkins/workspace/Test_openjdk8_hs_special.functional_x86-64_linux/openjdk-tests/TKG/../TKG/test_output_16109794004215/MBCS_Tests_pref_ja_JP_linux_0"; \
[2021-01-18T14:16:48.703Z] cd "/home/jenkins/workspace/Test_openjdk8_hs_special.functional_x86-64_linux/openjdk-tests/TKG/../TKG/test_output_16109794004215/MBCS_Tests_pref_ja_JP_linux_0"; \
[2021-01-18T14:16:48.703Z] LANG=ja_JP.UTF-8 bash /home/jenkins/workspace/Test_openjdk8_hs_special.functional_x86-64_linux/openjdk-tests/TKG/../../jvmtest/functional/MBCS_Tests/pref/test.sh; \
[2021-01-18T14:16:48.703Z] if [ $? -eq 0 ] ; then echo ""; echo "MBCS_Tests_pref_ja_JP_linux_0""_PASSED"; echo ""; cd /home/jenkins/workspace/Test_openjdk8_hs_special.functional_x86-64_linux/openjdk-tests/TKG/..; else echo ""; echo "MBCS_Tests_pref_ja_JP_linux_0""_FAILED"; echo ""; fi; } 2>&1 | tee -a "/home/jenkins/workspace/Test_openjdk8_hs_special.functional_x86-64_linux/openjdk-tests/TKG/../TKG/test_output_16109794004215/TestTargetResult";
[2021-01-18T14:16:48.703Z] Linux_ja_JP.UTF-8
[2021-01-18T14:16:50.029Z] Can't locate Test/Simple.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /home/jenkins/workspace/Test_openjdk8_hs_special.functional_x86-64_linux/openjdk-tests/TKG/../../jvmtest/functional/MBCS_Tests/pref/tap_compare.pl line 16.
[2021-01-18T14:16:50.029Z] BEGIN failed--compilation aborted at /home/jenkins/workspace/Test_openjdk8_hs_special.functional_x86-64_linux/openjdk-tests/TKG/../../jvmtest/functional/MBCS_Tests/pref/tap_compare.pl line 16.
[2021-01-18T14:16:50.029Z]
[2021-01-18T14:16:50.029Z] MBCS_Tests_pref_ja_JP_linux_0_FAILED
[2021-01-18T14:16:50.029Z]
[2021-01-18T14:16:50.029Z] Nothing to be done for teardown.
[2021-01-18T14:16:50.029Z] MBCS_Tests_pref_ja_JP_linux_0 Finish Time: Mon Jan 18 08:16:49 2021 Epoch Time (ms): 1610979409627
Running out of disk space on a machine can have knock on job failure impacts, so one rogue job can disable a test machine taking out any other job that subsequently tries to run on it...
Ideally we need a way of never hitting 100% disk space used:
The release dry-run needs to be earlier than the weekend before, to give several days to fully triage all the testcase failures? We can then have an "expected failure list" we simply cross check, and triage much quicker.
Basically in the week or 2 before a release I think we need to be on top of the testcase triaging, which in this case would have identified several machine setup issues (mac dumps, mac gptest, AIX dumps)
Would be great if people could help collect topics for the release announcement. See https://github.com/AdoptOpenJDK/blog/issues/561 for an example. I don't always realize that something is noteworthy and has impact on the end-users.
Apart from that, we should think about how we can introduce proper change logs in each project. I'm speaking about a file like https://github.com/square/okhttp/blob/master/CHANGELOG.md and not a commit history. For example, we lost the statement about the GCC 7.5 update in the release announcement because I was apparently the only person that could remember the change.
The release dry-run needs to be earlier than the weekend before, to give several days to fully triage all the testcase failures?
We're set up to do this weekly now aren't we? Therefore we should be triaging the release test suite on a weekly basis
We do triage the weekend tests on the Monday, yes
Agenda:
Previous Retrospective actions review
See this comment
Items for this retrospective
Actions as a result of this retrospective:
Adam Farley:
Andrew Leonard:
Agenda for Retrospective: Part 2
Previous Retrospective actions review
Actions as a result of this retrospective:
To be stored with the actions from part one (the comment above) to avoid confusion.
AOB
Raised JTHarness log limit issue: https://github.com/AdoptOpenJDK/openjdk-tests/issues/2226
Add the ReleaseType choice of "Weekly" to the build pipeline job: https://github.com/AdoptOpenJDK/openjdk-build/pull/2436
Note: Any unresolved actions have been folded into the next retrospective for review. Link.
If any have been unintentionally missed, feel free to add them.
This will be a Slack call after the release, with at least a week of notice in the #Release Slack channel.
A bulleted list of all proposed agenda items in this issue (whether at the top or in a comment) will be created on the day of the call, with a list of actions added at the end.