On 28 Feb 2018, at 14:47, Denver Gingerich <den...@ossguy.com> wrote:
> 
> On Wed, Feb 28, 2018 at 08:59:01AM +0000, Kevin Smith wrote:
>> On 13 Feb 2018, at 16:57, Simon Friedberger <simon.jab...@a-oben.org> wrote:
>>>    E3. Simply make the ID: FROM-TIMESTAMP.
>>>        Here FROM needs to be the eventual FROM after possible
>>> rewriting. Can
>>>        that be done?
>>>        And TIMESTAMP has to be strictly increasing so should have
>>> sub-second
>>>        resolution.
>>>        I assume this is impossible because otherwise it would be to
>>> easy. But
>>>        why is it impossible? :)
>> 
>> Because timestamps aren’t monotonic? :)
> 
> Do you mean because most people use Unix time and/or other UTC-based 
> timestamps (that have leap seconds)?
> 
> If so, this can be mostly solved by using TAI timestamps.  Unfortunately, it 
> is tricky in most OSes to obtain a TAI timestamp, but I found some code that 
> does this (on many platforms anyway):
> 
> https://ossguy.com/tai.c
> 
> We've used this code for implementing usage tracking in JMP (to ensure a 
> day's length doesn't vary from day to day - it is always exactly 86,400 
> seconds long).  For details, see 
> https://gitlab.com/ossguy/sgx-catapult/commit/31c2cb7c8fbea1ad4cc6753a4343dbfc65552fa5
>  .  As you might suspect, we'd like to port the above TAI code to Ruby, but 
> it works ok as-is for now.
> 
> I realize that clock skew could still cause the TAI timestamp that your OS 
> returns to be non-monotonic (i.e. a machine issue, not an issue with TAI time 
> itself); I'm not sure if that's a substantial issue for the message IDs being 
> discussed here.

I meant because clock skew is a thing, so relying on the monotonicity doesn’t 
work. Seems like it shouldn’t be a thing, but is.

/K
_______________________________________________
Standards mailing list
Info: https://mail.jabber.org/mailman/listinfo/standards
Unsubscribe: standards-unsubscr...@xmpp.org
_______________________________________________

Reply via email to