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