Hi, I've been using rsync on fedora over ssh to sync directories for decades, but suddenly having a problem with transferring multiple files at a time to one specific host using --files-from. Both sides are fedora38 with all updates applied. I can't think of what might have changed to have caused this. Using rsync to transfer a single file to this problematic host works successfully. It appears to be related to the number of files in the --files-from filelist. More than nine and it stalls; less than nine and it finishes successfully. I'm using the same version of rsync on both sides. Size of the file doesn't matter.
324094 ? S 0:00 rsync --server -vvvvlogDtpRe.LsfxCIvu . /var/tmp/one/
(Server) Protocol versions: remote=31, negotiated=31
(Client) Protocol versions: remote=31, negotiated=31
(Client) Protocol versions: remote=31, negotiated=31
When running the following command, it appears to collect the list of files to be transferred, successfully makes the connection with the remote server, but then just stalls. Using strace on the remote side shows rsync appears to be waiting for data.
rsync -avvvv --files-from=/etc/mail/filelist.txt -e 'ssh -i /root/keys/sync-key-v4' /etc/mail/tmp/ polaris:/var/tmp/one/
sync-key-v4 is a passwordless ed25519 key, but I've tried a handful of other ed25519 keys.
Could it be related to packet size or some kind of network disparity? It's not related to the size of the files, as I've tried large and small and it doesn't matter - if the number of files exceeds 9, it fails.
There is no error - it just hangs indefinitely until some timeout period. This is what it looks like on the remote side:
$ ps ax|grep rsync
324075 ? Ss 0:00 rsync --server -vvvvlogDtpRe.LsfxCIvu . /var/tmp/one/324094 ? S 0:00 rsync --server -vvvvlogDtpRe.LsfxCIvu . /var/tmp/one/
On the local side, with a few -vvvv added to rsync, I see this:
recv_file_list done
get_local_name count=9 /var/tmp/one/
generator starting pid=324075
delta-transmission enabled
recv_generator(config1.cf,0)
config1.cf is uptodate
send_files(0, config1.cf)
get_local_name count=9 /var/tmp/one/
generator starting pid=324075
delta-transmission enabled
recv_generator(config1.cf,0)
config1.cf is uptodate
send_files(0, config1.cf)
then it just stalls until it eventually times out. However, if I remove any one of the nine files from the filelist, it completes normally.
It actually also exhibits the same problem without a filelist at all - as long as I'm transferring multiple files, it fails. I suppose if I were syncing a directory with less than nine files, it might succeed, but local directory to any remote directory on this one server fails.
This also isn't a disk space or inode problem or corrupt filesystem problem - the same command works from a different host to this one problematic host without a problem. Destination directory also doesn't matter.
Thanks,
Alex
Alex
-- _______________________________________________ users mailing list -- users@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to users-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/users@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue