T13701 fails sporadically
T13701 fails sporadically, comments in D3586 indicate that it happens while the system is under load.
I reproduced this issue by duplicating T13701 7 times, making tests T13701[A-H], then running
make test TEST="T13701A T13701B T13701C T13701D T13701E T13701F T13701G T13701H THREADS=8"
on my box with 4 cpus.
Comparing profiling reports of the test under and not under load, I found the additional allocations to be in SysTools.builderMainLoop.loop. This function busy-waits from when 2 EOFs are received until getProcessExitCode returns a Just. That this is the cause was verified by changing
| otherwise -> loop chan hProcess t p exitcode
to
| otherwise -> threadDelay 10000 >> loop chan hProcess t p exitcode
Trac metadata
Trac field | Value |
---|---|
Version | 8.3 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Test Suite |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |