[Bug 13083] New: [PATCH] Use both partial file + basis file

samba-bugs at samba.org samba-bugs at samba.org
Thu Oct 12 14:28:32 UTC 2017


https://bugzilla.samba.org/show_bug.cgi?id=13083

            Bug ID: 13083
           Summary: [PATCH] Use both partial file + basis file
           Product: rsync
           Version: 3.1.3
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P5
         Component: core
          Assignee: wayned at samba.org
          Reporter: ben.rubson at gmail.com
        QA Contact: rsync-qa at samba.org

Created attachment 13681
  --> https://bugzilla.samba.org/attachment.cgi?id=13681&action=edit
Use both partial file + basis file

Hi,

In case of a transfer restart, if a partial file has been kept on receiving
side, this patch makes rsync to use the usual basis file (if found) in addition
to the partial file to speed-up the transfer.

Technically :
- if generator founds a partial file and a basis file, it will symlink the
basis file next the the partial file ;
- generator will send checksums to the sender from both files, as if there were
only one big basis file ;
- between the checksums of the 2 files, generator will send some dummy 0
checksums so that sender will see the second file's blocks as if they were
after the end of the final file, thus sender will be able to fully use them,
especially useful using --inplace ;
- receiver, if working on a partial file as basis file, will try to open the
second basis file thanks to the symlink ;
- receiver, if asked to handle a checksum with an offset greater than the
partial file's length, will take the corresponding block from the second basis
file.

Compatible with all sender's versions, as modification only takes place on
receiver side.

Fully compatible with the "allow --partial-dir with --inplace" patch :
https://bugzilla.samba.org/show_bug.cgi?id=13071

Hope to see both in 3.1.3 :)
Of course feel free to comment !

Thx !

Ben

-- 
You are receiving this mail because:
You are the QA Contact for the bug.



More information about the rsync mailing list