[tz] How good is pre-1970 time zone history represented in TZ database?

Robert Elz kre at munnari.OZ.AU
Wed Jun 3 12:31:43 UTC 2020


    Date:        Wed, 3 Jun 2020 12:22:32 +0100
    From:        Lester Caine <lester at lsces.uk>
    Message-ID:  <3576438c-e0bd-7188-2153-43d80e9054b8 at lsces.uk>

  | The CURRENT problem is even when 
  | present day time offsets change, a distribution will simply apply the 
  | new rules without any flagging that currently stored data may now be 
  | incorrect.

I'm not sure what you're getting at there.   There are two kinds of
changes that may be made to a zone.   One affects only future timestamps,
and is the common old garden variety "government interference" or however
you think of it.  These are far and away the most common changes.  While
when we have insufficient notification of a change, it may be applied
retrospectively, when that has happened, everyone tends to be very aware
that there were bad time conversions for a while.   In any case, old
historic stored data isn't affected at all by this kind of change, it
is as valid (or not) after the change as it was before.

The second kind of change is a correction to historic data.  This happens when
we discover an error in what was present (and these days, almost only ever
affects pre-1970 timestamps).

In those, if someone had stored the UTC converted form of some local timestamp,
then after the correction they wouldn't get back the data that was originally
used to produce it.

The problem there is having discarded the original data instead of retaining 
it.   Always retain the original source data.   Then by all means, when
computing, convert timestamps from their various local values to UTC so
they can be more easily correctly ordered (or whatever) but use those
converted values only for transient computations.   Store the original.
Always.

If that is done correctly, then after a correction to old data, the
results might be different than they were before - but that's only because
they were wrong before, and (hopefully) better after the fix.

The only time it makes sense to store timestamps in other than the original
form is when we *know* that the conversion is correct (and hence, no later
correction will change it).   For users of tzdata that really only applies
to post-1970 timestamps.

kre



More information about the tz mailing list