volker.weinberger@pharma.novartis.com
2004-Sep-20 09:12 UTC
rsync version 2.6.3pre1 protocol version 28
Hi, this is possibly a bug report (I'm not sure if this is a feature). It's related to the --keep-dirlinks option, when combined with --delete . I have the following directory structure on server A: ls -lR software software: total 238 drwxr-xr-x 2 biolord bioinf 1024 Sep 20 10:49 EMBOSS/ lrwxrwxrwx 1 biolord bioinf 6 Feb 5 2003 MSE -> EMBOSS/ lrwxrwxrwx 1 biolord bioinf 6 Feb 5 2003 PHYLIP -> EMBOSS/ ... lrwxrwxrwx 1 biolord bioinf 6 Feb 5 2003 TOPO -> EMBOSS/ ... software/EMBOSS: total 87942 -rw-r--r-- 1 biolord bioinf 551090 Jul 15 18:54 DOMAINATRIX-1.0.0.tar.gz -rw-r--r-- 1 biolord bioinf 12100223 Jan 21 2003 EMBOSS-2.6.0.tar.gz -rw-r--r-- 1 biolord bioinf 14024961 Nov 30 2003 EMBOSS-2.8.0.tar.gz -rw-r--r-- 1 biolord bioinf 14479274 Jul 15 18:54 EMBOSS-2.9.0.tar.gz lrwxrwxrwx 1 biolord bioinf 19 Jul 18 07:56 EMBOSS-latest.tar.gz -> EMBOSS-2.9.0.tar.gz -rw-r--r-- 1 biolord bioinf 340031 Jul 15 18:54 EMNU-1.05.tar.gz -rw-r--r-- 1 biolord bioinf 375473 Jul 15 18:54 ESIM4-1.0.0.tar.gz -rw-r--r-- 1 biolord bioinf 415122 Jul 15 18:54 MEME-2.3.1.tar.gz -rw-r--r-- 1 biolord bioinf 405440 Jul 15 18:54 MSE-1.0.0.tar.gz -rw-r--r-- 1 biolord bioinf 795320 Jun 1 2003 PHYLIP-3.573c.tar.gz -rw-r--r-- 1 biolord bioinf 843060 Jul 15 18:54 PHYLIP-3.57c.tar.gz -rw-r--r-- 1 biolord bioinf 309589 Nov 30 2003 TOPO-0.1.tar.gz -rw-r--r-- 1 biolord bioinf 342704 Jul 15 18:54 TOPO-1.0.0.tar.gz -rw-rw-rw- 1 biolord bioinf 29610 Sep 19 05:26 mirror.log Using rsync -r --delete on server B for this dir works fine, also rsync -r --keep-dirlinks works OK (but no deletes, of couse). With rsync --keep-dirlinks -r --delete HOST:$ftp/software . I get: rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/mirror.log" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/TOPO-1.0.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/TOPO-0.1.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/PHYLIP-3.57c.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/PHYLIP-3.573c.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/MSE-1.0.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/MSE-0.0.4.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/MEME-2.3.1.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/ESIM4-1.0.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/EMNU-1.05.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/EMNU-1.0.5.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/EMBOSS-latest.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/EMBOSS-2.9.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/EMBOSS-2.8.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/EMBOSS-2.7.1.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/EMBOSS-2.7.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/EMBOSS-2.6.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/EMBOSS-2.5.1.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/PHYLIP/DOMAINATRIX-1.0.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/mirror.log" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/TOPO-1.0.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/TOPO-0.1.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/PHYLIP-3.57c.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/PHYLIP-3.573c.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/MSE-1.0.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/MSE-0.0.4.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/MEME-2.3.1.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/ESIM4-1.0.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/EMNU-1.05.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/EMNU-1.0.5.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/EMBOSS-latest.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/EMBOSS-2.9.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/EMBOSS-2.8.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/EMBOSS-2.7.1.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/EMBOSS-2.7.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/EMBOSS-2.6.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/EMBOSS-2.5.1.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/MSE/DOMAINATRIX-1.0.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/EMBOSS/MSE-0.0.4.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/EMBOSS/EMNU-1.0.5.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/EMBOSS/EMBOSS-2.7.1.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/EMBOSS/EMBOSS-2.7.0.tar.gz" failed: No such file or directory (2) rsync: delete_one: unlink "/gaia/indata/software/EMBOSS/EMBOSS-2.5.1.tar.gz" failed: No such file or directory (2) software/EMBOSS/DOMAINATRIX-1.0.0.tar.gz 551090 [551194] software/EMBOSS/EMBOSS-2.6.0.tar.gz 12100223 [12101739] software/EMBOSS/EMBOSS-2.8.0.tar.gz 14024961 [14026713] software/EMBOSS/EMBOSS-2.9.0.tar.gz 14479274 [14481078] software/EMBOSS/EMNU-1.05.tar.gz 340031 [340111] software/EMBOSS/ESIM4-1.0.0.tar.gz 375473 [375557] software/EMBOSS/MEME-2.3.1.tar.gz 415122 [415210] software/EMBOSS/MSE-1.0.0.tar.gz 405440 [405528] software/EMBOSS/PHYLIP-3.573c.tar.gz 795320 [795456] software/EMBOSS/PHYLIP-3.57c.tar.gz 843060 [843200] software/EMBOSS/TOPO-0.1.tar.gz 309589 [309665] software/EMBOSS/TOPO-1.0.0.tar.gz 342704 [342784] software/EMBOSS/mirror.log 29610 [29650] ... rsync error: some files could not be transferred (code 23) at main.c(1126) These happens although the directories were perfectly in sync when the command was issued. Best regards, Volker Weinberger
Wayne Davison
2004-Sep-21 09:30 UTC
problem with --keep-dirlinks and --delete (was: rsync version 2.6.3pre1 protocol version 28)
On Mon, Sep 20, 2004 at 11:11:19AM +0200, volker.weinberger@pharma.novartis.com wrote:> this is possibly a bug report (I'm not sure if this is a feature). It's > related to the --keep-dirlinks option, when combined with --delete .Yeah, this weird behavior of --delete is something that Ivan Manida commented on not too long ago, but at the time I didn't have a good solution to propose to make it work right. However, I've just coded up a change that makes the list-generating code for deletions only transform symlinks that match a directory on the sender into a "kept" directory. This will fix this weird behavior you noted. It also fixes a problem that Ivan had noted where a bogus symlink on the receiver needs to be just deleted (e.g. an extra symlink to ".."). The fix has been checked into CVS and will be in 2.6.3pre2 (which is coming soon). ..wayne..