Description of problem: rsync fails an assertion when using -H Version-Release number of selected component (if applicable): rsync-3.0.1-0.1.pre1.fc9.x86_64 How reproducible: Every time Steps to Reproduce: 1. .../fedora/linux/releases/test/9-Beta was rsynced from the web site before the rsync update, with --exclude=/Fedora/*/iso/*.iso --exclude=/Live/*/*.iso in case it matters (and to make the download much faster) 2. I took two copies of the beta # cp -lR .../fedora/linux/releases/test/9-Beta/. .../somewhere # cp -lR .../fedora/linux/releases/test/9-Beta/. .../elsewhere/9-Beta 3. Use rsync just to adjust the timestamps of the directories # rsync -aH .../fedora/linux/releases/test/9-Beta/ .../elsewhere/9-Beta/ Actual results: rsync: hlink.c:508: finish_hard_link: Assertion `(((unsigned char *)(node->data))[0]) == 0' failed. Expected results: This works just fine with rsync-3.0.0-1.fc9 Additional info:
Standalone minimal reproducer script (involves a 4M download, I couldn't shrink it further): # prepare works rm -rf scratch1 scratch2 rsync -aH rsync://fedora.c3sl.ufpr.br/fedora/linux/releases/test/9-Beta/Fedora/ scratch1/ --include=/i386/os/repoview/[pswx]*.html --exclude=/i386/os/repoview/* --include=/i386/os/repoview --include={i386,x86_64}/os/Packages/Xaw3d-devel-1.5E-11.1.i386.rpm --exclude={i386,x86_64}/os/Packages/* --include={i386,x86_64}/os/Packages --exclude=/{i386,x86_64}/os/* --include=/{x86_64,i386}/os --exclude=/{i386,x86_64}/* --include=/{i386,x86_64} --exclude=/* --progress # first copy works, creates link rsync -aH scratch1/ scratch2/ # second copy fails rsync -aH scratch1/ scratch2/
Wayne fixed it in 3.0.1pre2