pgsql: Introduce sequence_*() access functions

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Introduce sequence_*() access functions
Date: 2024-02-26 07:10:00
Message-ID: E1reV7f-000oHi-PA@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Introduce sequence_*() access functions

Similarly to tables and indexes, these functions are able to open
relations with a sequence relkind, which is useful to make a distinction
with the other relation kinds. Previously, commands/sequence.c used a
mix of table_{close,open}() and relation_{close,open}() routines when
manipulating sequence relations, so this clarifies the code.

A direct effect of this change is to align the error messages produced
when attempting DDLs for sequences on relations with an unexpected
relkind, like a table or an index with ALTER SEQUENCE, providing an
extra error detail about the relkind of the relation used in the DDL
query.

Author: Michael Paquier
Reviewed-by: Tomas Vondra
Discussion: https://postgr.es/m/ZWlohtKAs0uVVpZ3@paquier.xyz

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/449e798c77ed9a03f8bb04e5d324d4e3cfbbae8e

Modified Files
--------------
src/backend/access/Makefile | 2 +-
src/backend/access/meson.build | 1 +
src/backend/access/sequence/Makefile | 17 +++++++
src/backend/access/sequence/meson.build | 5 +++
src/backend/access/sequence/sequence.c | 78 +++++++++++++++++++++++++++++++++
src/backend/commands/sequence.c | 31 ++++++-------
src/include/access/sequence.h | 23 ++++++++++
src/test/regress/expected/sequence.out | 3 +-
8 files changed, 140 insertions(+), 20 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Michael Paquier 2024-02-26 08:03:40 pgsql: Group more closely cache updates for backends in sequence.c
Previous Message Peter Eisentraut 2024-02-26 06:36:18 pgsql: Fix incorrect format placeholder