[Bug 10170] rsync should support reflink similar to cp --reflink
samba-bugs at samba.org
samba-bugs at samba.org
Thu Mar 26 19:40:43 MDT 2015
https://bugzilla.samba.org/show_bug.cgi?id=10170
--- Comment #5 from kdave <dave at jikos.cz> ---
(In reply to David Taylor from comment #2)
A few things:
* thanks for working on reflink support in rsync :)
* btrfs is not the only filesystem to support reflink, ocfs2 does as well, so
you might make the formulations more generic
* for btrfs, there are 2 types of the cloning ioctl:
1) that does file-to-file clone (same for ocfs2), IOC_CLONE
2) range cloning, IOC_CLONE_RANGE
I believe for rsync option 2 should be implemented in the similar way --inplace
works.
* the proposed patch does not work in all scenarios:
$ btrfs subvol create subv1
$ btrfs subvol create subv2
$ <create big file subv1/testfile>
$ rsync --reflink subv1/testfile subv2
according to strace, rsync does not call the clone ioctl at all (none of the
forked processes)
$ rsync --reflink-always subv1/testfile subv2
testfile
240,475,844 100% 43.54MB/s 0:00:05 (xfr#1, to-chk=0/1)
rsync: open "/subv2/testfile": No such file or directory (2)
rsync: reflink of "/subv2/.testfile.8bxNk0" failed: No such file or directory
(2)
rsync error: some files/attrs were not transferred (see previous errors) (code
23) at main.c(1165) [sender=3.1.2dev]
and the target file is not created, the same command without --reflink works.
* for speed comparison, I did 'cp --reflink subv1/testfile subv2' and it takes
near to no time, compared to 5 seconds for bare copy, I'm expecting that rsync
--reflink would take comparable time to cp+reflink
--
You are receiving this mail because:
You are the QA Contact for the bug.
More information about the rsync
mailing list