[darcs-users] Re: Darcs record hangs

Donald Bruce Stewart dons at cse.unsw.edu.au
Mon Mar 15 00:32:09 UTC 2004

> On Mon, Mar 15, 2004 at 12:03:50AM +0000, Robin Green wrote:
> > I tried stracing it but that Heisenbuggered it, changing it from a hang
> > to a "Interrupted!".
> Ah, sorry, my mistake - I'm used to pressing F and then CTRL+C in less,
> but of course CTRL+C was picked up by darcs as an interrupt.
> The strace shows an infinite loop of:
> sigreturn()                             = ? (mask now [])
> --- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
> with regular interspersions of rt_sigprocmask.
> Prior to that, the last file-related syscalls are opening, reading,
> statting and closing _darcs/patches/pending.

I'm not sure it is actually an infinite loop. Such a thing can be
detected by the runtime system, which will generate an exception:

        Prelude> let f = f
        Prelude> f
        *** Exception: <<loop>>

unless you have a buggy rts, I guess. What OS are you using, and what
GHC version?

-- Don

More information about the darcs-users mailing list