full upload happening even though only a timestamp has changed
jw schultz
jw at pegasys.ws
Tue Apr 22 11:10:13 EST 2003
On Mon, Apr 21, 2003 at 06:04:05PM -0700, jw schultz wrote:
> On Tue, Apr 22, 2003 at 12:36:02AM +0000, Tom Goulet wrote:
> > > If the mtime indicates the file has changed it will do an
> > > update. That doesn't mean that any actual file data will be
> > > transfered.
> >
> > That's what I thought was supposed to happen, but that's not what's
> > happening. My testing transfer has finished now and I'll show the
> > transcript here:
> > tomg at nova:~/mylibrary$ rsync -rtlPvessh /extra/library teep:/extra/tomg
> > building file list ...
> > 46349 files to consider
> > wrote 1358812 bytes read 20 bytes 44551.87 bytes/sec
> > total size is 5240249974 speedup is 3856.44
> > tomg at nova:~/mylibrary$ touch /extra/library/software/Knopper,_Klaus/KNOPPIX_V3.2-2003-04-18-EN.iso
> > tomg at nova:~/mylibrary$ rsync -rtlPvessh /extra/library teep:/extra/tomg
> > building file list ...
> > 46349 files to consider
> > library/software/Knopper,_Klaus/KNOPPIX_V3.2-2003-04-18-EN.iso
> > 729716736 100% 1.02MB/s 0:11:19
> > wrote 731164664 bytes read 36 bytes 1005037.39 bytes/sec
> > total size is 5240249974 speedup is 7.17
> > tomg at nova:~/mylibrary$
> >
> > As you can see, the second use of Rsync wrote 729805852 more bytes than
> > the first.
>
> The first time it didn't update the iso file.
>
> > > If all the blocksums match it will effectively do a local copy to the
> > > temp file and then rename back. If you want it to do a whole-file
> > > checksum as part of decideing whether to update you will need to use
> > > the -c option which overrides mtime.
> >
> > I don't understand much of that. Do I have to use the -c command line
> > option whenever I do not want Rsync to rely solely on the modification
> > time? I'm pretty confused. I'm certain I could use Rsync without that
> > option to make sure the remote file was right without actually uploading
> > file data, it's not like I wouldn't notice two days of upload time.
>
> Normally rsync uses file size and mtime to decide whether to
> skip a file. Generating checksums is expensive so that is
> not done unless updating the file. If you use -c it will
> generate a file checksum on each end to decide whether to
> skip instead of comparing mtime.
>
> There is a known problem with files of this size where block
> checksums fail on the first pass. When that happens there is
> a message that would look something like "redoing
> filename(1524)" in stdout. It is possible you are
> encountering this problem and -P is hiding it. Try
> redirecting stdout, don't use -P and perhaps add an extra
> -v.
Oh yeah, don't do the whole tree, just the iso file.
You don't need the noise caused by scanning the whole tree.
--
________________________________________________________________
J.W. Schultz Pegasystems Technologies
email address: jw at pegasys.ws
Remember Cernan and Schmitt
More information about the rsync
mailing list