From: | Hannu Krosing <hannuk(at)google(dot)com> |
---|---|
To: | "Andrey M(dot) Borodin" <x4mmm(at)yandex-team(dot)ru> |
Cc: | Aleksander Alekseev <aleksander(at)timescale(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Peter Eisentraut <peter(at)eisentraut(dot)org> |
Subject: | Re: What is a typical precision of gettimeofday()? |
Date: | 2024-07-03 11:29:22 |
Message-ID: | CAMT0RQQyk7WeArWMxA67dU5JPfAee2StAuaY0V2ymyMhKJX0EQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
We currently do something similar with OIDs where we just keep
generating them and then testing for conflicts.
I don't think this is the best way to do it but it mostly works when
you can actually test for uniqueness, like for example in TOAST or
system tables.
Not sure this works even reasonably well for UUIDv7.
--
Hannu
On Wed, Jul 3, 2024 at 12:38 PM Andrey M. Borodin <x4mmm(at)yandex-team(dot)ru> wrote:
>
>
>
> > On 3 Jul 2024, at 13:48, Aleksander Alekseev <aleksander(at)timescale(dot)com> wrote:
> >
> > Hi,
> >
> >> That’s a very interesting result, from the UUID POV!
> >> If time is almost always advancing, using time readings instead of a counter is very reasonable: we have interprocess monotonicity almost for free.
> >> Though time is advancing in a very small steps… RFC assumes that we use microseconds, I’m not sure it’s ok to use 10 more bits for nanoseconds…
> >
> > A counter is mandatory since someone can for instance change the
> > system's time while the process is generating UUIDs. You can't
> > generally assume that local time of the system is monotonic.
>
> AFAIR according to RFC when time jumps backwards, we just use time microseconds as a counter. Until time starts to advance again.
>
>
> Best regards, Andrey Borodin.
From | Date | Subject | |
---|---|---|---|
Next Message | Dilip Kumar | 2024-07-03 11:36:05 | Re: Conflict Detection and Resolution |
Previous Message | Ranier Vilela | 2024-07-03 11:29:15 | Re: Additional minor pg_dump cleanups |