Cygwin issues: modify-window and hangs
dwd at drdykstra.us
Tue Jan 28 15:58:24 EST 2003
Thanks, you saved me some trouble. I put it in.
On Mon, Jan 27, 2003 at 06:52:30PM -0800, jw schultz wrote:
> On Mon, Jan 27, 2003 at 03:57:16PM -0600, Dave Dykstra wrote:
> > On Mon, Jan 27, 2003 at 04:38:09PM -0000, Max Bowsher wrote:
> > > Dave Dykstra wrote:
> > > > This modify-window default of 1 has been causing some trouble on the
> > > > rsync test suite on the Cygwin test machine on build.samba.org. The
> > > > problem is that some files get created and immediately copied within
> > > > one second, and then the rsync code that implements '-p' checks to
> > > > see if the copied file's time is within one second before deciding
> > > > whether or not to change it. The test machine is presumably using an
> > > > NTFS filesystem so it has one second granuarlity.
> > >
> > > Yes, noticed this running "make check" last night. However, I also got
> > > random (i.e. re-run the testsuite and get different results) failures of
> > > some other tests. Is this showing up in your test machine?
> > I did notice strange failure of the "hands" test on the build.samba.org
> > Cygwin test machine.
> > > > Last night I considered 4 possible solutions:
> > > > 1. Change the test suite to always wait 2 seconds before copying,
> > > > at
> > > > the beginning of the "checkit" function.
> > > > 2. Change the test suite to always pass --modify-window=0 to
> > > > rsync by including it in the $RSYNC variable in testsuite/rsync.fns.
> > > > 3. Change the set_perms() function in rsync.c to check for exact
> > > > time rather than calling cmp_modtime.
> > > > 4. Back out the default of --modify-window=1 on cygwin and go
> > > > back to
> > > > a default of 0.
> > > >
> > > > I implemented solution 1, but I'm not very comfortable with it because
> > > > it slows the tests on all platforms. I'm now leaning toward solution
> > > > 3. Discussion?
> > >
> > > How about 4? It seems wrong to penalize NTFS for a FAT problem, especially
> > > as NTFS is now the preferred Windows filesystem.
> > >
> > > Unless someone feels like making a FAT-detection patch, the previous status
> > > quo looks to me like the best option.
> > You've talked me into it.
> If you are going to revert cygwin to a --modify-window=0
> default we should have a notice in the bugs section of the
> I've attached a patch that adds this, improves (in my
> opinion) the --modify-window section slightly, removes
> reference to a bug tracking system and updates the version
> the manpage reports current with.
> J.W. Schultz Pegasystems Technologies
> email address: jw at pegasys.ws
> Remember Cernan and Schmitt
> Index: rsync.yo
> RCS file: /cvsroot/rsync/rsync.yo,v
> retrieving revision 1.113
> diff -u -b -r1.113 rsync.yo
> --- rsync.yo 27 Jan 2003 03:13:46 -0000 1.113
> +++ rsync.yo 28 Jan 2003 01:56:31 -0000
> @@ -396,8 +396,8 @@
> the timestamps as being equal if they are within the value of
> modify_window. This is normally zero, but you may find it useful to
> set this to a larger value in some situations. In particular, when
> -transferring to/from FAT filesystems which cannot represent times with
> -a 1 second resolution this option is useful.
> +transferring to FAT filesystems which cannot represent times with
> +a 1 second resolution --modify-window=1 is useful.
> dit(bf(-c, --checksum)) This forces the sender to checksum all files using
> a 128-bit MD4 checksum before transfer. The checksum is then
> @@ -1110,16 +1110,20 @@
> times are transferred as unix time_t values
> +When transferring to FAT filesystmes rsync may resync
> +unmodified files.
> +See the comments on the --modify-window option.
> file permissions, devices etc are transferred as native numerical
> see also the comments on the --delete option
> -Please report bugs! The rsync bug tracking system is online at
> +Please report bugs! See the website at
> -This man page is current for version 2.0 of rsync
> +This man page is current for version 2.5.6 of rsync
More information about the rsync