rsync stuck after correctly sending the file

Matt McCutchen hashproduct+rsync at gmail.com
Sun Dec 17 17:16:22 GMT 2006


On 12/15/06, Loic Le Loarer <loic_leloarer at sdesigns.eu> wrote:
> I didn't keep the generator strace file for this failure, sorry, but I
> have been able to generate a new set of straces for the same problem:
> when rsyncing two directories which contain one big ,v file, rsync is
> stuck after having transfered the big file correctly.
>
> The command line is something like :
> mordred$ rsync -e cvslrsh -dgopv --del path/ hirondelle:path
> and the cvslrsh script is calling rsh to connect to hirondelle, then
> cvslock to lock the destination path before calling rsync with the given
> arguments.

I looked at the straces, and the trouble seems to be that the network
is losing data: some of the block sums sent by the generator never
reach the sender.  On line 8632 of rsync.log.14745, the generator
sends a chunk of 4092 bytes of block sums for "tango.v.gz,v" (the
second of the two files in the transfer):

14:03:51 write(1, "^\3\311\314\3234m\37CL\305\264aCY{I\35\3"..., 4092) = 4092

It proceeds to send several more 4092-byte chunks of block sums.  On
line 100310 of rsync.log.17155, the sender receives the first 2660
bytes of the chunk above and times out waiting for the rest:

05:05:41 read(11, "^\3\311\314\3234m\37CL\305\264aCY{I\35\3"..., 4092) = 2660
05:05:41 select(12, [11], [], NULL, {60, 0}) = 0 (Timeout)
05:06:41 select(12, [11], [], NULL, {60, 0}) = 0 (Timeout)
05:07:41 select(12, [11], [], NULL, {60, 0}) = 0 (Timeout)
[...]

I'm not sure what to recommend for troubleshooting the network.

Matt


More information about the rsync mailing list