31 lines
1.4 KiB
Markdown
31 lines
1.4 KiB
Markdown
Windows has an unfortunate handling of time zones, which means that when
|
|
the time zone is changed (or DST changes), the timestamps of files also
|
|
appear to change.
|
|
|
|
This means that after such a change, git-annex will see new mtimes, and
|
|
want to re-checksum every file in the repo.
|
|
|
|
[[!tag confirmed]]
|
|
|
|
> Update: Actually, I seem to have been getting confused by behavior of
|
|
> cygwin terminal setting TZ. That indeed led to timestamp changes when the
|
|
> time zone changed. I have made git-annex unset TZ to avoid this.
|
|
>
|
|
> Without TZ set, time stamps are actually stable across time zone changes.
|
|
> Ie, a simple program to read the time stamp of a file and print it
|
|
> always shows the same thing, before and after a timezone change.
|
|
>
|
|
> However, and here's where it gets truely ghastly: A program that stats a
|
|
> file in a loop will see its timestamp change when the timezone changes.
|
|
> I suspect this might be a bug in the Haskell RTS caching something it
|
|
> should not. Stopping and re-running the program gets back to the
|
|
> original timestamp.
|
|
>
|
|
> I have not tested DST changes, but it's hard to imagine it being any
|
|
> worse than the above behavior.
|
|
>
|
|
> So, that's insane then. We can't trust timestamps to be stable on windows
|
|
> when git-annex is running for a long period of time. --[[Joey]]
|
|
>
|
|
> > [[fixed|done]], using the inode sentinal file to detect when windows
|
|
> > has lost its mind, and calculating its delta from insanity. --[[Joey]]
|