delete-before-update patch
Dave Dykstra
dwd at bell-labs.com
Thu Nov 22 08:40:07 EST 2001
On Wed, Nov 21, 2001 at 11:09:48AM -0800, Don Mahurin wrote:
> I have been using this simple patch enough that I know it works for my
> purpose,
> now I submit it here, for comments.
>
> --delete-before-update
> implies -W, unlinks the destination file just before the new (temporary)
> file is written.
>
> This would be used when writing to a small or near full medium to use the
> minmum space when writing.
Looks fine, although since there are likely to be very few people who
would want that functionality I doubt if it will get into the official
rsync distribution.
> In my case, I happen to be writing to compact flash, so since -W turns the
> block checksum off, I need -c to force a checksum to ensure that byte wise
> identical files are not rewritten.
>
> Tim's comment below concerned me, but looking at the code, -W and -c can
> sensibly be used together.
> (correct me if I am wrong)
> -W turns off the per block checksum.
> -c turns on whole file checksum.
>
> so, the flags that I am using "--delete-before-update -c" make sense.
>
>
> tim.conway at philips.com wrote:
>
> > -W and -c are actually kind of opposite effects... -W means never
> > checksum... if it's different in length or time, send it.
> > -c means ALWAYS checksum, even if time and length are identical.
There's no reason why you can't use -W and -c together. -W means don't
do the rolling checksum algorithm after you've identified a file to
transfer, and -c means do a full checksum in order to decide whether or
not to do any transfer. Without -c, usually just the modification time
and file size is used to determine whether or not to do a transfer.
- Dave Dykstra
More information about the rsync
mailing list