I'm pretty sure `pipes-concurrent` is the problem because it is doing unsafe stuff under the hood (using `unsafeIOToSTM` to touch a weak `IORef`).
Fortunately, there is a safe alternative now, which is the newly added `mkWeakTVar` in the `stm` package. I will fix this on the weekend but if somebody has time before then the above solution is the first thing I would try. On Jul 7, 2014 11:20 PM, "Andrew Cowie" <[email protected]> wrote: > On Mon, 2014-07-07 at 08:42 -0700, Gabriel Gonzalez wrote: > > You shouldn't ever get these errors, even if you forget performGC. > > I've heard from Michael Xavier that he had this issue when he switched > > to ghc-7.8. Are you by chance also using ghc-7.8? > > I'm not about to say that pipes-concurrent is the problem, but we have a > program where we used it and are seeing the > > "thread blocked indefinitely in an STM transaction" > > error message whenever multiple concurrent requests come in. We've only > just started debugging it, but we are indeed on GHC 7.8.2 > > AfC > Sydney > > > > -- > You received this message because you are subscribed to the Google Groups > "Haskell Pipes" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > -- You received this message because you are subscribed to the Google Groups "Haskell Pipes" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected].
