I got a second opinion on Slack that confirmed my suspicions that the internal tracking structures could have corrupted reads in this case. I’ve filed an issue on Revise.jl here Revise.revise(...) is not safe to be called from multiple threads simultaneously · Issue #845 · timholy/Revise.jl · GitHub, but in the meantime a fairly easy workaround is to put your own locks around the whole of Revise.revise(...).
1 Like