> Eventually, though, writefd_unbuffered() will be called. The last
> recv_generator() log message will vary depending on how many files
> need updates (i.e. how many bytes are written to the buffer). The
> call to writefd_unbuffered() will trigger a call to select() with both
> a write mask (with f_out) and also a read mask (with io_error_fd).
> Since the sibling client:1 has exited (closing its end of the error
> pipe) there will be a pending EOF on io_error_fd. This will trigger a
> call to read_error_fd(), which calls read_loop(), which calls
> read_unbuffered() on the io_error_fd. Which is EOF. Hence unexpected
> EOF number two. [FYI, I've captured a stack trace of this situation.]
Does this help? I see a lot of these errors in my logs -- I was not sure
if it was from my perl, rync or ssh. I had been ignoring them. I can't
find corresponding code (perror/printf) in the 2.3.2 or 2.4.6 source but
thought I'd throw this out anyway.
[herc]:~/pensync >grep -i "Bad File" */*
Friday/pen150.errors:select: Bad file number
Friday/pen150.errors:select: Bad file number
Friday/pen150.errors:select: Bad file number
Friday/pen150.errors:select: Bad file number
Friday/penapps1.errors:select: Bad file number
Friday/penapps1.errors:select: Bad file number
Friday/penapps1.errors:select: Bad file number
Friday/penapps12.errors:select: Bad file number
...
I get dozens of these every night. (I run about 400 rsync sessions
nightly) Problem with this report is most of these are 2.3.2 clients for
a 2.3.2 server. Neil is talking about 2.4.6 server mode rsync. I'm
running through shh. Different setup, but same core code right? Sorry
for the wasted bytes if this is unrelated.
> I just wanted to get this posted so that I can start the day tomorrow
> with the "overnight" reaction from those in other time zones. In
> particular, is anyone who is using --timeout=0 (the default) on the
> server nonetheless seeing unexpected EOF?
I get the 2.4.6 'hangs' using --timeout=0. It seems to work better using
non-zero timeout, but maybe I'm more lost/confused that I think.
eric