Carlos E. R. wrote:
On 2014-06-26 20:33, Greg Freemyer wrote:
On Thu, Jun 26, 2014 at 1:43 PM, Carlos E. R.
I forgot to say:
NTFS stores timestamps with 100 nsec accuracy, so the 2-second issue must be a Windows API issue, not an underlying NTFS format issue. (I did find discussion of the 2-second bug, but I'm not sure that is my problem.)
http://msdn.microsoft.com/en-us/library/windows/desktop/ms724290(v=vs.85).as...
If rsync from openSUSE has this problem too, then it really is a bug, but likely an upstream rsync or NTFS-3g bug. For now I've only seen it in cygwin/windows world.
AFAIK it is only an issue when dealing with mixed environments. Rsync with Linux uses... I don't know, milliseconds perhaps. But when dealing with fat, ntfs, or samba, it sees the timestamps with two second granularity. I did hit this issue, and I had to use a certain switch in rsync to patch it.
Ah, found it:
--modify-window When comparing two timestamps, rsync treats the timestamps as being equal if they differ by no more than the modify-window value. This is normally 0 (for an exact match), but you may find it useful to set this to a larger value in some situations. In particular, when transferring to or from an MS Win- dows FAT filesystem (which represents times with a 2-second resolution), --modify-window=1 is useful (allowing times to differ by up to 1 second).
Ah, maybe ntfs is not affected. But perhaps the windows api is, for compatibility, or depending on the particular api call that the windows rsync version uses.
Remember when Windows NT servers had to be rebooted after 48 days or they would crash... here's why: Unix time: linux-86ja:~> units You have: 2147483648 sec You want: year * 68.051104 / 0.014694839 You have: 4294967296 msec You want: day * 49.71027 / 0.020116568 You have: 2147483648 sec You want: day * 24855.135 You have: ^C Note that in Windows NT kept time in milliseconds with a 32-bit unsigned int, whereas Unix kept time in seconds using 32-bit signed int (which effectively makes for a 31-bit signed int). Maximum Windows NT uptime: 49 days Maximum Unix uptime: 68 YEARS = 24855 days. It's obvious which was the better design decision. -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org