Repository navigation
Regression in async exception handling (?) on Windows in network-2.6.3.4 #327
Description
Activity
This is the same as #326? I think the problem is that
withMVaris used inacceptnow, where it used to bereadMVar. Then the same MVar gets used inNetwork.Socket.close. I'm having some difficulty finding the source since everything was moved around. But you can see in efb0e79 it'scurrentStatus <- readMVar statusand in the version on hackage it'swithMVar statusDirect link to the line:
Line 425 in efb0e79
currentStatus <- readMVar status withMVarwas necessary formkWeakMVarin GHC 8.2.2.
But we have removedmkWeakMVar, sowithMVaris not necessary anymore.
OK.
I will take care of this.Given that a lot of packages haven't upgraded to 2.7 yet, it would be great to have this backported to 2.6.
- added a commit that references this issue
on Jun 25, 2018 Just a question: Is it possible to release 2.6.x.y after 2.7.z.w is released in Hackage?
- I don't see a problem with that.…On Mon, Jun 25, 2018, 9:14 AM Kazu Yamamoto ***@***.***> wrote: Just a question: Is it possible to release 2.6.x.y after 2.7.z.w is released in Hackage? — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#327 (comment)>, or mute the thread <https://github.com/notifications/unsubscribe-auth/AADBB07CbXLQRoxpLLfvpaTXG1ZBBM9iks5uAH-ogaJpZM4UtAnd> .
- added 2 commits that reference this issue
on Jun 25, 2018 @kazu-yamamoto I'm going to put out the 2.6.x.x branch since many have not converted and this is a pretty sneaky insidious bug.
I'm going to put out the 2.6.x.x branch since many have not converted and this is a pretty sneaky insidious bug.
Thanks!
This has been fixed in 2.6.3.6.
Sorry for the non-minimal repro, this is as far as I was able to take it for now. Consider the following Stack script, with uses LTS 10.7, which uses network-2.6.3.3.
As expected, this exits immediately. However, if you change this to LTS-10.8 (which uses network-2.6.3.4), it will hang indefinitely on Windows. This regression has caused the Yesod test suite to fail, see yesodweb/yesod#1523.
I'm only guessing that this is a change in asynchronous exception behavior based on looking at the diff between 2.6.3.3 and 2.6.3.4, it could be something else at play.