this just went from horrible to insanely weird
This commit is contained in:
parent
5c5c5cda85
commit
9dd380cf3b
1 changed files with 20 additions and 10 deletions
|
@ -5,14 +5,24 @@ appear to change.
|
||||||
This means that after such a change, git-annex will see new mtimes, and
|
This means that after such a change, git-annex will see new mtimes, and
|
||||||
want to re-checksum every file in the repo.
|
want to re-checksum every file in the repo.
|
||||||
|
|
||||||
The best way to fix this seems to be to normalize the timestamp returned by
|
|
||||||
getFileStatus, which is relative to the current time zone, to be relative
|
|
||||||
to UTC. (As is always the case on Unix, of course).
|
|
||||||
However, to do that, I need to know the current timezone.
|
|
||||||
|
|
||||||
Unfortunately, Data.Time.LocalTime.getCurrentTimeZone doesn't seem to really
|
|
||||||
work on windows. It always returns a time zone 60 minutes from UTS in my tests,
|
|
||||||
no matter what the zone really is. I need to test this more widely and file
|
|
||||||
a GHC bug if appropriate.
|
|
||||||
|
|
||||||
[[!tag confirmed]]
|
[[!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]]
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue