On 1 April 2010 12:34, Andrew Bennetts <email address hidden> wrote:
> Somehow calling bzrlib.trace.note is triggering a EAGAIN or similar...
> presumably it's trying to write to stderr, and that is what is failing.
> I wouldn't expect that error from a non-blocking file descriptor, and I
> wouldn't expect stderr to be non-blocking, but I guess at least one of
> my assumptions there is wrong.
I wouldn't be surprised if bzr explorer makes it a pipe, and that pipe
may somehow be in nonblocking mode, perhaps accidentally. We could,
for instance, force stderr into blocking mode if this theory is true.
> It might be triggered by something like the parent process not reading
> the stderr output as fast the child is generating it (or not reading
> stderr at all until the process is finished)?
On 1 April 2010 12:34, Andrew Bennetts <email address hidden> wrote:
> Somehow calling bzrlib.trace.note is triggering a EAGAIN or similar...
> presumably it's trying to write to stderr, and that is what is failing.
> I wouldn't expect that error from a non-blocking file descriptor, and I
> wouldn't expect stderr to be non-blocking, but I guess at least one of
> my assumptions there is wrong.
I wouldn't be surprised if bzr explorer makes it a pipe, and that pipe
may somehow be in nonblocking mode, perhaps accidentally. We could,
for instance, force stderr into blocking mode if this theory is true.
> It might be triggered by something like the parent process not reading
> the stderr output as fast the child is generating it (or not reading
> stderr at all until the process is finished)?
-- launchpad. net/~mbp/>
Martin <http://