From b3b515bad8fdc0c03b756c8e652d4737dcb49570 Mon Sep 17 00:00:00 2001 From: Austin Williams Date: Tue, 7 Oct 2025 11:37:28 -0700 Subject: [PATCH 1/4] Create DELETE_ME --- DELETE_ME | 1 + 1 file changed, 1 insertion(+) create mode 100644 DELETE_ME diff --git a/DELETE_ME b/DELETE_ME new file mode 100644 index 000000000..34feaf4af --- /dev/null +++ b/DELETE_ME @@ -0,0 +1 @@ +temp change to test workflow From 29ab1baa7cd2e72a325e228664a52721e8d614a5 Mon Sep 17 00:00:00 2001 From: Austin Williams Date: Tue, 7 Oct 2025 12:14:20 -0700 Subject: [PATCH 2/4] Add manual workflow dispatch --- .github/workflows/ion-java-performance-regression-detector.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ion-java-performance-regression-detector.yml b/.github/workflows/ion-java-performance-regression-detector.yml index 8d6a394a2..47d70b35b 100644 --- a/.github/workflows/ion-java-performance-regression-detector.yml +++ b/.github/workflows/ion-java-performance-regression-detector.yml @@ -4,6 +4,7 @@ name: Ion Java performance regression detector on: + workflow_dispatch: pull_request: paths: - 'src/**' From c05eb4478e6507d4eb3df537437cceccc92380c8 Mon Sep 17 00:00:00 2001 From: Austin Williams Date: Tue, 7 Oct 2025 12:17:54 -0700 Subject: [PATCH 3/4] Create DELETE_ME in src/ --- src/DELETE_ME | 1 + 1 file changed, 1 insertion(+) create mode 100644 src/DELETE_ME diff --git a/src/DELETE_ME b/src/DELETE_ME new file mode 100644 index 000000000..497a99b41 --- /dev/null +++ b/src/DELETE_ME @@ -0,0 +1 @@ +trigger workflow? From b47a4ae6e861e26916efeffa97a4bc19cd975dec Mon Sep 17 00:00:00 2001 From: Austin Williams Date: Tue, 7 Oct 2025 12:26:23 -0700 Subject: [PATCH 4/4] Tweaks and improvements to performance regression detection workflow --- ...ion-java-performance-regression-detector.yml | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ion-java-performance-regression-detector.yml b/.github/workflows/ion-java-performance-regression-detector.yml index 47d70b35b..5596d2c5a 100644 --- a/.github/workflows/ion-java-performance-regression-detector.yml +++ b/.github/workflows/ion-java-performance-regression-detector.yml @@ -15,7 +15,7 @@ permissions: env: data_size: '50000' test_data_id: 'generated-test-data' - benchmark_config: '--mode AverageTime --forks 5 --warmups 2 --iterations 3 --io-type buffer' + benchmark_config: '--mode AverageTime --forks 3 --warmups 5 --iterations 7 --io-type buffer' jobs: generate-test-data: @@ -125,11 +125,17 @@ jobs: run: | ./gradlew clean publishToMavenLocal - - name: Benchmark ion-java from the base commit + # Maven logs cloud up the benchmark logs and make them hard to compare in the workflow logs. + # Build the benchmark-cli in a separate step. + - name: Build ion-java-benchmark-cli from the base commit, prepare for benchmark working-directory: ion-java-benchmark-cli run: | mvn clean install mkdir /home/runner/work/ion-java/ion-java/benchmarkresults + + - name: Benchmark ion-java from the base commit + working-directory: ion-java-benchmark-cli + run: | java -jar target/ion-java-benchmark-cli-0.0.1-SNAPSHOT-jar-with-dependencies.jar ${{matrix.usage-patterns}} ${{env.benchmark_config}} -r ion -o /home/runner/work/ion-java/ion-java/benchmarkresults/before.ion /home/runner/work/ion-java/ion-java/testData/${{matrix.test-data}}.10n - name: Build ion-java from the new commit @@ -137,6 +143,11 @@ jobs: run: | ./gradlew clean publishToMavenLocal + - name: Build ion-java-benchmark-cli from the new commit + working-directory: ion-java-benchmark-cli + run: | + mvn clean install + - name: Benchmark ion-java from the new commit working-directory: ion-java-benchmark-cli run: | @@ -148,4 +159,4 @@ jobs: working-directory: ion-java-benchmark-cli run: | a=$(java -jar target/ion-java-benchmark-cli-0.0.1-SNAPSHOT-jar-with-dependencies.jar compare --benchmark-result-previous /home/runner/work/ion-java/ion-java/benchmarkresults/before.ion --benchmark-result-new /home/runner/work/ion-java/ion-java/benchmarkresults/after.ion) - if [ ! -z "$a" ]; then echo "${a}" >> $GITHUB_STEP_SUMMARY; exit 1; fi + if [ ! -z "$a" ]; then echo "${a}" >> $GITHUB_STEP_SUMMARY; echo "${a}"; exit 1; fi