Re: Sequence Access Methods, round two
Matthias van de Meent <boekewurm+postgres@gmail.com>
From: Matthias van de Meent <boekewurm+postgres@gmail.com>
To: Peter Eisentraut <peter@eisentraut.org>
Cc: Michael Paquier <michael@paquier.xyz>, Postgres hackers <pgsql-hackers@lists.postgresql.org>
Date: 2024-01-18T15:54:06Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Refactor init_params() in sequence.c to not use FormData_pg_sequence_data
- ba3d93b2e806 19 (unreleased) landed
-
Fix comment thinko in sequence.c
- 17a3f79f812c 17.0 landed
-
Group more closely cache updates for backends in sequence.c
- 6e951bf98e2e 17.0 landed
-
Introduce sequence_*() access functions
- 449e798c77ed 17.0 landed
On Thu, 18 Jan 2024, 16:06 Peter Eisentraut, <peter@eisentraut.org> wrote: > > On 01.12.23 06:00, Michael Paquier wrote: > > Please find attached a patch set that aims at implementing sequence > > access methods, with callbacks following a model close to table and > > index AMs, with a few cases in mind: > > - Global sequences (including range-allocation, local caching). > > - Local custom computations (a-la-snowflake). > > That's a lot of code, but the use cases are summarized in two lines?!? > > I would like to see a lot more elaboration what these uses cases are (I > recognize the words, but do we have the same interpretation of them?) > and how they would be addressed by what you are proposing, and better > yet an actual implementation of something useful, rather than just a > dummy test module. At $prevjob we had a use case for PRNG to generate small, non-sequential "random" numbers without the birthday problem occurring in sqrt(option space) because that'd increase the printed length of the numbers beyond a set limit. The sequence API proposed here would've been a great alternative to the solution we found, as it would allow a sequence to be backed by an Linear Congruential Generator directly, rather than the implementation of our own transactional random_sequence table. Kind regards, Matthias van de Meent Neon (https://neon.tech)