I've noticed this problem for a while and thought it was my
own changes to rsync causing them. I've recently done some
tests with vanilla versions of rsync though, and found the
same problem. Here's the details.

The generator process on an rsync server seems to get stuck in
an infinite loop after a client process dies. (The receiver
process dies just fine). I can produce this behavior by starting rsync
on the client sending files to the server, waiting for the file generation
process to end and the file sending to start, then killing the rsync process
on the client end. I see this bug on rsync 2.6.0-2.6.6. Version 2.5.7
doesn't exhibit the same behavior.

I'm running rsync over stunnel, though I doubt that has any effect on the bug
since rsync is running in daemon mode on the server. (Stunnel thus passes
packets on to rsync via loopback). The module I'm testing under isn't running
as root, and the timeout on the server is set to 120 seconds.

Strace output for the generator process looks like this:

select(5, NULL, [4], NULL, {33, 310000}) = 0 (Timeout)
select(5, NULL, [4], NULL, {60, 0}) = 0 (Timeout)
select(5, NULL, [4], NULL, {60, 0}) = 0 (Timeout)
select(5, NULL, [4], NULL, {60, 0}) = 0 (Timeout)
select(5, NULL, [4], NULL, {60, 0}) = 0 (Timeout)
select(5, NULL, [4], NULL, {60, 0}) = 0 (Timeout)
select(5, NULL, [4], NULL, {60, 0}) = 0 (Timeout)
select(5, NULL, [4], NULL, {60, 0}) = 0 (Timeout)
select(5, NULL, [4], NULL, {60, 0}) = 0 (Timeout)

--
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html