The bug that Luite and I uncovered is http://ghc.haskell.org/trac/ghc/ticket/7930. It would not be related. There was a bug relating to `catchSTM` that was fixed recently: http://ghc.haskell.org/trac/ghc/ticket/8035. And another related to profiling: http://ghc.haskell.org/trac/ghc/ticket/8298. I doubt either of these is related. I'm happy to help narrow things down. Ryan On Thu, Oct 17, 2013 at 4:39 AM, Simon Marlow <marlowsd@gmail.com> wrote:
On 17/10/2013 03:01, Andreas Voellmy wrote:
Hi all,
I have a program that uses STM heavily and also performs lots of foreign calls. I've noticed that sometimes the program uses 100% CPU indefinitely and uses lots of memory - I see it go up to about 5GB before I kill it. I've grabbed some preliminary samples of stack traces and see lots stm related stuff (e.g. lots of stg_atomically_frame_info and stmCommitTransaction entries). I can pretty reliably get the behavior to happen now by closing a socket that my Haskell program is trying to recv from. When this causes an exception to be raised (something like "recv: resource vanished (Connection reset by peer)") , then this behavior gets triggered. I haven't pinned down the bug yet, but I'm suspecting it is STM related - somehow the exception causes some STM transaction to go wrong.
Are there any known bugs that sound similar to this?
BTW, this is with GHC 7.6.3 from a recent HP release on OS X.
Please create a ticket and dump all the information you have in it. There might be something we can tell from the stack trace, but if not we'll need a way to reproduce it.
Cheers, Simon
______________________________**_________________ ghc-devs mailing list ghc-devs@haskell.org http://www.haskell.org/**mailman/listinfo/ghc-devs<http://www.haskell.org/mailman/listinfo/ghc-devs>