andygrove opened a new pull request, #1428:
URL: https://github.com/apache/arrow-java/pull/1428

   ## What's Changed
   
   When a test JVM crashes in the RC workflow's Binaries job, the log says only 
`Error occurred in starting fork, check output in log`, `Corrupted channel by 
directly writing to native stream in forked JVM N` and `Aborted (core dumped)`. 
The details stay on the runner. HotSpot writes `hs_err_pid<pid>.log` to the 
module directory, and surefire saves the crash banner the JVM printed to stdout 
in `target/surefire-reports/*.dumpstream`. The job uploads neither.
   
   For example, the Binaries job on #1419 failed twice this way ([attempt 
1](https://github.com/apache/arrow-java/actions/runs/41233658912/job/124634336074),
 [attempt 
2](https://github.com/apache/arrow-java/actions/runs/41233658912/job/124888186799)).
 All 46 arrow-dataset tests passed, then the JVM that had run 35 of them 
aborted, and nothing in the log shows where it crashed.
   
   This adds a step that uploads those files as a `binaries-jvm-crash-files` 
artifact when the job fails. It uses the same pinned `actions/upload-artifact` 
as the job's other upload steps. `if-no-files-found: ignore` keeps the step 
quiet when a failure isn't a crash.
   
   I checked the patterns against a local arrow-dataset crash, which left 
`dataset/hs_err_pid<pid>.log` and 
`dataset/target/surefire-reports/<timestamp>-jvmRun<N>.dumpstream`. actionlint 
reports nothing new in `rc.yml`. The step runs only when the job fails, so this 
PR's own CI run won't exercise it.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to