Skip to content

Commit b557520

Browse files
committed
Merge tag 'jdk-21.0.9+3' into jdk-21.0.9+3-mmtk
Added tag jdk-21.0.9+3 for changeset d90297a
2 parents 2632c4f + d90297a commit b557520

File tree

8,833 files changed

+355716
-191640
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

8,833 files changed

+355716
-191640
lines changed
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
#
2+
# Copyright (c) 2023, 2024, Oracle and/or its affiliates. All rights reserved.
3+
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4+
#
5+
# This code is free software; you can redistribute it and/or modify it
6+
# under the terms of the GNU General Public License version 2 only, as
7+
# published by the Free Software Foundation. Oracle designates this
8+
# particular file as subject to the "Classpath" exception as provided
9+
# by Oracle in the LICENSE file that accompanied this code.
10+
#
11+
# This code is distributed in the hope that it will be useful, but WITHOUT
12+
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13+
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14+
# version 2 for more details (a copy is included in the LICENSE file that
15+
# accompanied this code).
16+
#
17+
# You should have received a copy of the GNU General Public License version
18+
# 2 along with this work; if not, write to the Free Software Foundation,
19+
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20+
#
21+
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22+
# or visit www.oracle.com if you need additional information or have any
23+
# questions.
24+
#
25+
26+
name: 'Build JTReg'
27+
description: 'Build JTReg'
28+
29+
runs:
30+
using: composite
31+
steps:
32+
- name: 'Get JTReg version configuration'
33+
id: version
34+
uses: ./.github/actions/config
35+
with:
36+
var: JTREG_VERSION
37+
38+
- name: 'Check cache for already built JTReg'
39+
id: get-cached
40+
uses: actions/cache@v4
41+
with:
42+
path: jtreg/installed
43+
key: jtreg-${{ steps.version.outputs.value }}
44+
45+
- name: 'Checkout the JTReg source'
46+
uses: actions/checkout@v4
47+
with:
48+
repository: openjdk/jtreg
49+
ref: jtreg-${{ steps.version.outputs.value }}
50+
path: jtreg/src
51+
if: (steps.get-cached.outputs.cache-hit != 'true')
52+
53+
- name: 'Build JTReg'
54+
run: |
55+
# Build JTReg and move files to the proper locations
56+
bash make/build.sh --jdk "$JAVA_HOME_17_X64"
57+
mkdir ../installed
58+
mv build/images/jtreg/* ../installed
59+
working-directory: jtreg/src
60+
shell: bash
61+
if: (steps.get-cached.outputs.cache-hit != 'true')
62+
63+
- name: 'Upload JTReg artifact'
64+
uses: actions/upload-artifact@v4
65+
with:
66+
name: bundles-jtreg-${{ steps.version.outputs.value }}
67+
path: jtreg/installed
68+
retention-days: 5

.github/actions/do-build/action.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2022, 2025, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -42,7 +42,7 @@ runs:
4242
- name: 'Build'
4343
id: build
4444
run: >
45-
make LOG=info ${{ inputs.make-target }}
45+
make -k LOG=info ${{ inputs.make-target }}
4646
|| bash ./.github/scripts/gen-build-failure-report.sh "$GITHUB_STEP_SUMMARY"
4747
shell: bash
4848

@@ -66,15 +66,15 @@ runs:
6666
shell: bash
6767

6868
- name: 'Upload build logs'
69-
uses: actions/upload-artifact@v3
69+
uses: actions/upload-artifact@v4
7070
with:
7171
name: failure-logs-${{ inputs.platform }}${{ inputs.debug-suffix }}
7272
path: failure-logs
7373
if: steps.check.outputs.failure == 'true'
7474

7575
# This is the best way I found to abort the job with an error message
7676
- name: 'Notify about build failures'
77-
uses: actions/github-script@v6
77+
uses: actions/github-script@v7
7878
with:
7979
script: core.setFailed('Build failed. See summary for details.')
8080
if: steps.check.outputs.failure == 'true'

.github/actions/get-bootjdk/action.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2022, 2023, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -65,7 +65,7 @@ runs:
6565

6666
- name: 'Check cache for BootJDK'
6767
id: get-cached-bootjdk
68-
uses: actions/cache@v3
68+
uses: actions/cache@v4
6969
with:
7070
path: bootjdk/jdk
7171
key: boot-jdk-${{ inputs.platform }}-${{ steps.sha256.outputs.value }}
@@ -104,6 +104,6 @@ runs:
104104
- name: 'Export path to where BootJDK is installed'
105105
id: path-name
106106
run: |
107-
# Export the path
108-
echo 'path=bootjdk/jdk' >> $GITHUB_OUTPUT
107+
# Export the absolute path
108+
echo "path=`pwd`/bootjdk/jdk" >> $GITHUB_OUTPUT
109109
shell: bash

.github/actions/get-bundles/action.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,14 +48,14 @@ runs:
4848
steps:
4949
- name: 'Download bundles artifact'
5050
id: download-bundles
51-
uses: actions/download-artifact@v3
51+
uses: actions/download-artifact@v4
5252
with:
5353
name: bundles-${{ inputs.platform }}${{ inputs.debug-suffix }}
5454
path: bundles
5555
continue-on-error: true
5656

5757
- name: 'Download bundles artifact (retry)'
58-
uses: actions/download-artifact@v3
58+
uses: actions/download-artifact@v4
5959
with:
6060
name: bundles-${{ inputs.platform }}${{ inputs.debug-suffix }}
6161
path: bundles

.github/actions/get-gtest/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ runs:
4040
var: GTEST_VERSION
4141

4242
- name: 'Checkout GTest source'
43-
uses: actions/checkout@v3
43+
uses: actions/checkout@v4
4444
with:
4545
repository: google/googletest
4646
ref: 'v${{ steps.version.outputs.value }}'

.github/actions/get-jtreg/action.yml

Lines changed: 6 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2023, 2024, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -24,7 +24,7 @@
2424
#
2525

2626
name: 'Get JTReg'
27-
description: 'Download JTReg from cache or source location'
27+
description: 'Get JTReg'
2828
outputs:
2929
path:
3030
description: 'Path to the installed JTReg'
@@ -39,30 +39,12 @@ runs:
3939
with:
4040
var: JTREG_VERSION
4141

42-
- name: 'Check cache for JTReg'
43-
id: get-cached-jtreg
44-
uses: actions/cache@v3
42+
- name: 'Download JTReg artifact'
43+
id: download-jtreg
44+
uses: actions/download-artifact@v4
4545
with:
46+
name: bundles-jtreg-${{ steps.version.outputs.value }}
4647
path: jtreg/installed
47-
key: jtreg-${{ steps.version.outputs.value }}
48-
49-
- name: 'Checkout the JTReg source'
50-
uses: actions/checkout@v3
51-
with:
52-
repository: openjdk/jtreg
53-
ref: jtreg-${{ steps.version.outputs.value }}
54-
path: jtreg/src
55-
if: steps.get-cached-jtreg.outputs.cache-hit != 'true'
56-
57-
- name: 'Build JTReg'
58-
run: |
59-
# Build JTReg and move files to the proper locations
60-
bash make/build.sh --jdk "$JAVA_HOME_17_X64"
61-
mkdir ../installed
62-
mv build/images/jtreg/* ../installed
63-
working-directory: jtreg/src
64-
shell: bash
65-
if: steps.get-cached-jtreg.outputs.cache-hit != 'true'
6648

6749
- name: 'Export path to where JTReg is installed'
6850
id: path-name

.github/actions/get-msys2/action.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,7 @@ runs:
3030
using: composite
3131
steps:
3232
- name: 'Install MSYS2'
33-
# use a specific release of msys2/setup-msys2 to prevent jtreg build failures on newer release
34-
uses: msys2/setup-msys2@7efe20baefed56359985e327d329042cde2434ff
33+
uses: msys2/setup-msys2@v2.22.0
3534
with:
3635
install: 'autoconf tar unzip zip make'
3736
path-type: minimal

.github/actions/upload-bundles/action.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,9 +69,9 @@ runs:
6969
shell: bash
7070

7171
- name: 'Upload bundles artifact'
72-
uses: actions/upload-artifact@v3
72+
uses: actions/upload-artifact@v4
7373
with:
7474
name: bundles-${{ inputs.platform }}${{ inputs.debug-suffix }}
7575
path: bundles
76-
retention-days: 1
76+
retention-days: 5
7777
if: steps.bundles.outputs.bundles-found == 'true'

.github/scripts/gen-build-failure-report.sh

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,19 @@
2424
# questions.
2525
#
2626

27+
# Import common utils
28+
. .github/scripts/report-utils.sh
29+
2730
GITHUB_STEP_SUMMARY="$1"
2831
BUILD_DIR="$(ls -d build/*)"
2932

3033
# Send signal to the do-build action that we failed
3134
touch "$BUILD_DIR/build-failure"
3235

36+
# Collect hs_errs for build-time crashes, e.g. javac, jmod, jlink, CDS.
37+
# These usually land in make/
38+
hs_err_files=$(ls make/hs_err*.log 2> /dev/null || true)
39+
3340
(
3441
echo '### :boom: Build failure summary'
3542
echo ''
@@ -46,6 +53,20 @@ touch "$BUILD_DIR/build-failure"
4653
echo '</details>'
4754
echo ''
4855

56+
for hs_err in $hs_err_files; do
57+
echo "<details><summary><b>View HotSpot error log: "$hs_err"</b></summary>"
58+
echo ''
59+
echo '```'
60+
echo "$hs_err:"
61+
echo ''
62+
cat "$hs_err"
63+
echo '```'
64+
echo '</details>'
65+
echo ''
66+
done
67+
4968
echo ''
5069
echo ':arrow_right: To see the entire test log, click the job in the list to the left. To download logs, see the `failure-logs` [artifact above](#artifacts).'
5170
) >> $GITHUB_STEP_SUMMARY
71+
72+
truncate_summary

.github/scripts/gen-test-results.sh

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/bash
22
#
3-
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
3+
# Copyright (c) 2022, 2024, Oracle and/or its affiliates. All rights reserved.
44
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
55
#
66
# This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,9 @@
2424
# questions.
2525
#
2626

27+
# Import common utils
28+
. .github/scripts/report-utils.sh
29+
2730
GITHUB_STEP_SUMMARY="$1"
2831

2932
test_suite_name=$(cat build/run-test-prebuilt/test-support/test-last-ids.txt)
@@ -44,8 +47,8 @@ for test in $failures $errors; do
4447
base_path="$(echo "$test" | tr '#' '_')"
4548
report_file="$report_dir/$base_path.jtr"
4649
hs_err_files=$(ls $report_dir/$base_path/hs_err*.log 2> /dev/null || true)
50+
replay_files=$(ls $report_dir/$base_path/replay*.log 2> /dev/null || true)
4751
echo "#### <a id="$anchor">$test"
48-
4952
echo '<details><summary>View test results</summary>'
5053
echo ''
5154
echo '```'
@@ -73,20 +76,22 @@ for test in $failures $errors; do
7376
echo ''
7477
fi
7578

76-
done >> $GITHUB_STEP_SUMMARY
77-
78-
# With many failures, the summary can easily exceed 1024 kB, the limit set by Github
79-
# Trim it down if so.
80-
summary_size=$(wc -c < $GITHUB_STEP_SUMMARY)
81-
if [[ $summary_size -gt 1000000 ]]; then
82-
# Trim to below 1024 kB, and cut off after the last detail group
83-
head -c 1000000 $GITHUB_STEP_SUMMARY | tac | sed -n -e '/<\/details>/,$ p' | tac > $GITHUB_STEP_SUMMARY.tmp
84-
mv $GITHUB_STEP_SUMMARY.tmp $GITHUB_STEP_SUMMARY
85-
(
79+
if [[ "$replay_files" != "" ]]; then
80+
echo '<details><summary>View HotSpot replay file</summary>'
8681
echo ''
87-
echo ':x: **WARNING: Summary is too large and has been truncated.**'
82+
for replay in $replay_files; do
83+
echo '```'
84+
echo "$replay:"
85+
echo ''
86+
cat "$replay"
87+
echo '```'
88+
done
89+
90+
echo '</details>'
8891
echo ''
89-
) >> $GITHUB_STEP_SUMMARY
90-
fi
92+
fi
93+
done >> $GITHUB_STEP_SUMMARY
9194

9295
echo ':arrow_right: To see the entire test log, click the job in the list to the left.' >> $GITHUB_STEP_SUMMARY
96+
97+
truncate_summary

0 commit comments

Comments
 (0)