The SIGPIPE case that never failed in 20,000 laptop runs but failed on the first Rewind run is a strong result. One thing I wonder about is "same result under all 65 schedules" only rules out failures that happen more than roughly 5% of the time. Is there a way to see how many schedules rarer races need, say 1 in 1,000?
You can ask for as many schedules as you need `rewind check --all --schedules 3000` (for 1 in 1_000 lets say) but the code also pushes the scheduler toward bad timing: it switches threads at random points and sometimes stalls a process for up to about a millisecond, the way a busy CI machine would.
1 comments