Thread: Re: Removing log_cnt from pg_sequence_read_tuple()

Re: Removing log_cnt from pg_sequence_read_tuple()

From
Nathan Bossart
Date:
On Mon, Aug 26, 2024 at 11:11:55AM +0900, Michael Paquier wrote:
> It seems to me that we'd live better without it, at least it matters
> for the sequence AM patch, because some of its callbacks are also
> shaped around the fact that WAL may not be required for sequence value
> computations.  Providing a function that should be rather generic does
> not fit well in this context, still I agree that it comes down to how
> the callbacks are defined, of course.  My point is that the use of WAL
> is something that should be optional, but log_cnt in this function
> makes it a mandatory concept that all sequence AMs would need to deal
> with.

I am fine with changes to this function that would allow it to be
generically useful for all sequence AMs, provided that it can still be used
for dumpSequenceData().  I only included log_cnt because
pg_sequence_read_tuple() is intended to be a substitute for SELECT from the
sequence, but I'm not aware of any real use-case for that column besides
debugging, which you've already addressed.  Even if we remove log_cnt, you
can still find it with SELECT, too.

The patch looks reasonable to me.  Do you think the name of the function
still makes sense now that 1) we might have different sequence AMs in the
near future and 2) it no longer returns everything in the sequence tuple?

-- 
nathan



Re: Removing log_cnt from pg_sequence_read_tuple()

From
Nathan Bossart
Date:
On Thu, Aug 29, 2024 at 08:00:52AM +0900, Michael Paquier wrote:
> On Mon, Aug 26, 2024 at 09:19:06AM -0500, Nathan Bossart wrote:
>> The patch looks reasonable to me.  Do you think the name of the function
>> still makes sense now that 1) we might have different sequence AMs in the
>> near future and 2) it no longer returns everything in the sequence tuple?
> 
> Indeed, pg_sequence_read_tuple() would not reflect the reality, some
> ideas: 
> - pg_sequence_read_data
> - pg_sequence_get_data
> - pg_sequence_data
> - More consistent with other catalog functions: pg_get_sequence_data,
> as we have already in the tree a lot of pg_get_* functions.

pg_get_sequence_data() sounds fine to me.

-- 
nathan



Re: Removing log_cnt from pg_sequence_read_tuple()

From
Nathan Bossart
Date:
On Thu, Aug 29, 2024 at 02:11:22PM +0900, Michael Paquier wrote:
> Okay, here is a v2 of the patch using this name for the function.

LGTM

-- 
nathan