[Bug 2645] New: --one-file-system semantics changed with 2.6.4
(bug?)
samba-bugs at samba.org
samba-bugs at samba.org
Sun Apr 24 17:26:36 GMT 2005
https://bugzilla.samba.org/show_bug.cgi?id=2645
Summary: --one-file-system semantics changed with 2.6.4 (bug?)
Product: rsync
Version: 2.6.4
Platform: All
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P3
Component: core
AssignedTo: wayned at samba.org
ReportedBy: dalgoda at ix.netcom.com
QAContact: rsync-qa at samba.org
With 2.6.4, the semantics for -x have changed, and are actually quite bizarre
now. I think it's a bug, but I'm not certain.
Take the following scenario:
thune:/usr/src/rsync/rsync-2.6.4# mount | grep -w -e a -e b
/dev/ram1 on /a type ext2 (rw)
/dev/ram2 on /a/b type ext2 (rw)
thune:/usr/src/rsync/rsync-2.6.4# find /a -type f
/a/b/e/g
/a/b/e/h
/a/b/f/i
/a/b/f/j
/a/c
/a/d
thune:/usr/src/rsync/rsync-2.6.4# find /a -type d
/a
/a/lost+found
/a/b
/a/b/lost+found
/a/b/e
/a/b/f
Now, with 2.6.3, I get this:
thune:/usr/src/rsync/rsync-2.6.3# ./rsync -a -n -e ssh --delete -x
--rsync-path=`pwd`/rsync /a thune:/
building file list ... done
sent 114 bytes received 20 bytes 17.87 bytes/sec
total size is 58 speedup is 0.43
That is, a no-op. To be expected since I'm rsycning to the same machine.
With 2.6.4, I get this:
thune:/usr/src/rsync/rsync-2.6.4# ./rsync -a -n -e ssh --delete -x
--rsync-path=`pwd`/rsync /a thune:/
building file list ... done
deleting a/b/lost+found/
deleting a/b/f/j
deleting a/b/f/i
deleting a/b/f/
deleting a/b/e/h
deleting a/b/e/g
deleting a/b/e/
That is, someone is following all the files under /a/b and trying to delete them
from destination, but of course, we see that /a/b is a different filesystem.
It definitely seems to be in the server code, as using 2.6.3 client and 2.6.4
server invokes the problem, but vice-versa does not.
What's really strange it is stops 2 directories deep. That is, if I create some
deeper entries:
thune:/usr/src/rsync/rsync-2.6.4# mkdir /a/b/e/k
thune:/usr/src/rsync/rsync-2.6.4# touch /a/b/e/k/{l,m}
thune:/usr/src/rsync/rsync-2.6.4# ./rsync -v -v -a -n -e ssh --delete -x
--rsync-path=`pwd`/rsync /a thune:/
opening connection using ssh thune /usr/src/rsync/rsync-2.6.4/rsync --server
-vvnlogDtprx --delete . /
building file list ...
done
deleting in a
deleting a/b/lost+found/
deleting a/b/f/j
deleting a/b/f/i
deleting a/b/f/
deleting a/b/e/h
deleting a/b/e/g
deleting a/b/e/
delta-transmission enabled
It doesn't go down that deep!
Actually, if you look at 2.6.4pre1, it does:
thune:/usr/src/rsync/rsync-2.6.4pre1# ./rsync -a -n -e ssh --delete -x
--rsync-path=`pwd`/rsync /a thune:/
building file list ... done
deleting a/b/lost+found/
deleting a/b/f/j
deleting a/b/f/i
deleting a/b/f/
deleting a/b/e/k/m
deleting a/b/e/k/l
deleting a/b/e/k/
deleting a/b/e/h
deleting a/b/e/g
deleting a/b/e/
sent 114 bytes received 20 bytes 17.87 bytes/sec
total size is 58 speedup is 0.43
But starting with pre2 it doesn't:
thune:/usr/src/rsync/rsync-2.6.4pre2# ./rsync -a -n -e ssh --delete -x
--rsync-path=`pwd`/rsync /a thune:/
building file list ... done
deleting a/b/lost+found/
deleting a/b/f/j
deleting a/b/f/i
deleting a/b/f/
deleting a/b/e/h
deleting a/b/e/g
deleting a/b/e/
sent 114 bytes received 20 bytes 17.87 bytes/sec
total size is 58 speedup is 0.43
I'll try to look at the code later today, but no guaratees I'll get a chance to.
--
Configure bugmail: https://bugzilla.samba.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.
More information about the rsync
mailing list