a race condition that doesn't happen under rr chaos mode
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 10.7k
- Forks
- 662
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 2
Description
To reproduce:
- Check out and build commit https://github.com/JuliaLang/julia/pull/32114/commits/c35d1d7f7c9d90e0a00ded1980d6fcd5d06f5433
- Run https://gist.github.com/JeffBezanson/30c46a96f1743d3a92fbdd23779806d2 with
JULIA_NUM_THREADS=2 ./julia pfib.jl
This reliably triggers a type error that's caused by a race condition. The fix was to switch the order of two writes, in commit https://github.com/JuliaLang/julia/pull/32114/commits/f81d4d21862c99e1c0452bdf2613ab9e20da9935.
I have not been able to get the bug to trigger under rr 5.2.0, with or without chaos mode, so I thought this case might be interesting.
While I'm here let me add that rr is amazing and has been incredibly useful; thanks!
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by checking the Julia commit c35d1d7f7c9d90e0a00ded1980d6fcd5d06f5433 and run the pfib.jl reproduction with JULIA_NUM_THREADS=2 under rr 5.2.0, including chaos mode. Compare the behavior with the fix in commit f81d4d21862c99e1c0452bdf2613ab9e20da9935; the issue does not define a specific change or completion condition.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, linux
- Domain
- devtools, operating-systems
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100