ldc
ldc copied to clipboard
macOS: Sporadic druntime integration test 'gc' (forkgc2) failure
Testing forkgc2
/Users/runner/work/1/build/runtime/druntime-test-gc-debug/forkgc2
gnumake: *** [/Users/runner/work/1/build/runtime/druntime-test-gc-debug/forkgc2.done] Abort trap: 6
Happened twice in a row yesterday with Azure image 20210626.1 after the tiny Travis change. Was green with 20210620.1. The release variant of the test passed both times, so it might be a timing issue.
The same image apparently still worked both times with GitHub Actions for the LLVM 7 job (the test isn't run for the LLVM 10 job because excluded with BUILD_SHARED_LIBS=ON...).
For reference, I've seen several spurious failures for that test happening on different CI machines. E.g.:
Testing forkgc timelimit -t 10 ./generated/osx/release/64/forkgc [parent] Creating garbage... [parent] Collecting garbage... [parent] Forking... [child] In fork. [child] Creating garbage... [child] Collecting garbage... [child] Exiting fork. [parent] Creating garbage... [parent] Collecting garbage... [parent] Forking... [parent] Waiting for fork (PID 48354). [parent] Fork 48354 exited (0). Testing forkgc2 timelimit -t 10 ./generated/osx/release/64/forkgc2 forkgc2(48359,0x102145000) malloc: *** error for object 0x7fb2c9500150: double free *** set a breakpoint in malloc_error_break to debug make[2]: *** [generated/osx/release/64/forkgc2.done] Error 134 make[1]: *** [test/gc/.run] Error 2 make: *** [unittest-release] Error 2
Ah, double free, definitely interesting.
on different CI machines
Do you recall if it was Mac only or also happening on other OSs?
Only found this recent failure (also on Mac) but i doubt that it was restricted to Mac. Not sure though, this error occurred rarely over the last year(s).
A retry attempt a few hours ago has worked, so it's apparently sporadic. Maybe just bad luck on that day, or the probability of failure has increased for some reason...