superlifter design notes (was Re: Latest rZync release: 0.06)

Bennett Todd bet at
Fri Jul 26 06:10:02 EST 2002

2002-07-26-03:37:51 jw schultz:
> All that matters is that we can represent the timestamps in
> a way that allows consistent comparison, restoration and
> transfer.

A very good statement indeed. There are complications, though. Some
time representations used by computer systems have ambiguities, two
different times that are represented with the same number, or two
different representations (created at different times) that actually
end up representing the same time.

> [...] we can pick as an epoch any time in recorded human history.
> I don't feel qualified to impose any epoch myself.  I would be
> inclined to stick with the UNIX epoch for the sake of convenience.

Which Unix epoch? 1970-01-01 00:00:00? 1970-01-01 00:00:10, and
changing every time they issue a new leap second?

> Conversion with any other time representation should be a matter
> of t * scale + offset.

The trick is that offset. Given the different timekeeping systems
in use, you can't correctly translate from one to another over
a range of dates extending over years unless you either have a
leap-second table of your own and convert to an absolute time
format, or else you choose something like ISO 8601, and use local
routines on each platform to convert to and from YYYY-MM-DD
HH:MM:SS in UTC, recognizing that SS can exceed 59 when there are
leap-seconds, and that sometimes, converting back to a machine's
internal representation, you may have to fudge for that if the local
conversion routines don't know about leap seconds.

TAI has the advantage that while various platforms have troubles
getting to and from it, those have often been solved by other people
(djb for Unix systems), and once you get to TAI you know where
you're at:-).

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 232 bytes
Desc: not available
Url :

More information about the rsync mailing list