AdoptOpenJDK / TSC

The AdoptOpenJDK Technical Steering Committee - Also acts as the knowledge portal for the Adopt OpenJDK GitHub projects
70 stars 33 forks source link

Retrospective for January 2021 Releases #195

Closed adamfarley closed 2 years ago

adamfarley commented 3 years ago

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.

adamfarley commented 3 years ago
smlambert commented 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.

adamfarley commented 3 years ago

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.

adamfarley commented 3 years ago

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.

karianna commented 3 years ago

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] ...
karianna commented 3 years ago

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
andrew-m-leonard commented 3 years ago

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:

andrew-m-leonard commented 3 years ago

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)

aahlenst commented 3 years ago

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.

sxa commented 3 years ago

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

andrew-m-leonard commented 3 years ago

We do triage the weekend tests on the Monday, yes

adamfarley commented 3 years ago

Agenda:

Previous Retrospective actions review

See this comment

Items for this retrospective

Actions as a result of this retrospective:

Adam Farley:

Andrew Leonard:

adamfarley commented 3 years ago

Agenda for Retrospective: Part 2

Previous Retrospective actions review

See unaddressed actions here.

Actions as a result of this retrospective:

To be stored with the actions from part one (the comment above) to avoid confusion.

AOB

andrew-m-leonard commented 3 years ago

Raised JTHarness log limit issue: https://github.com/AdoptOpenJDK/openjdk-tests/issues/2226

andrew-m-leonard commented 3 years ago

Add the ReleaseType choice of "Weekly" to the build pipeline job: https://github.com/AdoptOpenJDK/openjdk-build/pull/2436

adamfarley commented 2 years ago

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.