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?

Either way this is a bug since it violates the library's contract.  If you
can throw together a minimal example that reproduces the error as a Github
issue then I can dig into this.
On Jul 6, 2014 11:59 PM, "Nick Partridge" <[email protected]> wrote:

> Hi, I've been playing a bit with Pipes.Concurrent lately, and I seem to be
> stumbling into STM errors more than I'd like. Here's a recent example:
>
> https://gist.github.com/nkpart/5c83011b10b33ebc5e35
>
> The function takes a number of workers to spawn, a generator of work and
> the function to run on each worker thread. What I don't understand is why I
> needed to explicitly seal the output channels in this example.  Is it
> something to do with the fact I have 2 sets of channels in play? The
> examples in the docs don't illustrate anything like this and that seems to
> me to be the only real point of difference between this and what works.
>
> Also in general, I find that I'm frequently able to get bits and pieces to
> compile, look okay, and maybe even run correctly some percentage of the
> time, and then blow up with STM exceptions occasionally as well. Usually
> I've missed the performGC, but the experience is disturbing to my Haskell
> brain.
>
> Thanks,
> Nick
>
> --
> 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].

Reply via email to