Skip to content

Archive compilation core dumps on compile failure - #7645

Merged
JasonFengJ9 merged 1 commit into
adoptium:masterfrom
mahdipub:fix/archive-compilation-coredumps
Sep 11, 2026
Merged

JasonFengJ9 merged 1 commit into
adoptium:masterfrom
mahdipub:fix/archive-compilation-coredumps

Conversation

@mahdipub

Copy link
Copy Markdown
Contributor

When a JVM crash occurs during test compilation (e.g. an AOT relocation crash as seen in eclipse-openj9/openj9#24627), moveDmp.pl moves dump files to output_compilation/ then calls false to abort make. This causes the Jenkins shell step in makeCompileTest() to throw before env.jobStatus is updated from its initial SUCCESS value, so the FAILURE branch in post() is never reached and the dumps are wiped by cleanWs.

Wrap the compile sh step in a try/catch: archive *.dmp and *.trc from output_compilation/ in the catch block, then re-throw so the build still fails as expected.

Fixes: eclipse-openj9/openj9#24627

Signed-off-by: mahdi@ibm.com

@annaibm annaibm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@annaibm

annaibm commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

One other thing : -
Since this crash is intermittent (needed 50 grinder iterations to reproduce), have you run the patched Jenkinsfile against a repro — either Kavin's grinder job or a forced failure — and confirmed the .dmp/.trc files actually show up as archived artifacts on the build page, not just that the build failed as expected?

@mahdipub

Copy link
Copy Markdown
Contributor Author

One other thing : - Since this crash is intermittent (needed 50 grinder iterations to reproduce), have you run the patched Jenkinsfile against a repro — either Kavin's grinder job or a forced failure — and confirmed the .dmp/.trc files actually show up as archived artifacts on the build page, not just that the build failed as expected?

No I didn't. But I will ask in issue to see if they can test it on my fork and force a failure to prove it work.

@KavinSatheeskumar

Copy link
Copy Markdown

@annaibm @mahdipub
Here is that test you wanted
https://openj9-jenkins.osuosl.org/job/Grinder/5388/

@annaibm

annaibm commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

@pshipton Kindly review

Comment thread buildenv/jenkins/JenkinsfileBase Outdated
Comment thread buildenv/jenkins/JenkinsfileBase Outdated
When a JVM crash occurs during test compilation (e.g. an AOT relocation
crash as seen in eclipse-openj9/openj9#24627), moveDmp.pl moves dump
files to output_compilation/ then calls `false` to abort make. This
causes the Jenkins shell step in makeCompileTest() to throw before
env.jobStatus is updated from its initial SUCCESS value, so the FAILURE
branch in post() is never reached and the dumps are wiped by cleanWs.

Wrap the compile sh step in a try/catch: archive *.dmp and *.trc from
output_compilation/ in the catch block, then re-throw so the build
still fails as expected.

Fixes: eclipse-openj9/openj9#24627

Signed-off-by: mahdi@ibm.com
@mahdipub
mahdipub force-pushed the fix/archive-compilation-coredumps branch from 224084c to 0e3fadb Compare September 11, 2026 18:57
@mahdipub

Copy link
Copy Markdown
Contributor Author

@pshipton could you please review again?

@JasonFengJ9
JasonFengJ9 merged commit 75bcd76 into adoptium:master Sep 11, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

x86 macOS JDK8 AOT relocation crash building tests

5 participants