You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Why are the runReader outside of replicateConcurrently? Won't it cause lookForWork to not be fully evaluated (it returns some data structure which represents delayed computation that needs the "reader" values provided to get evaluated, and these values are provided outside the replicateConcurrently, so possibly outside a mutex the code should be evaluated in?)
Well, the simple fix of moving the runReader inside replicateConcurrently doesn't seem to help, but the issue may be more subtle. I'm not sure if what we execute under atomically is really evaluated atomically in the way we expect and not just some half-evaluated data structure is returned which is then non-atomically evaluated further when we do runReader. But I might just not understand the code well enough.
I can deterministically reproduce a parallelism error on my Linux laptop:
devnet
(commit 15c2cf78796321f6d0b9039e705747754f8e8dea) inanoma-apps
.juvix clean --global && juvix dependencies update && juvix typecheck
The result:
I get this error every time, but for a different file each time. The error doesn't appear with
-N 1
.The text was updated successfully, but these errors were encountered: