agora inbox for pgsql-committers@postgresql.org
help / color / mirror / Atom feedFrom: Fujii Masao <fujii@postgresql.org>
To: pgsql-committers@lists.postgresql.org
Subject: pgsql: Fix ALTER DOMAIN VALIDATE CONSTRAINT locking
Date: Thu, 18 Jun 2026 01:22:46 +0000
Message-ID: <E1wa1Sw-000nIm-29@gemulon.postgresql.org> (raw)
Fix ALTER DOMAIN VALIDATE CONSTRAINT locking
Commit 16a0039dc0d1 reduced the lock level for ALTER DOMAIN ...
VALIDATE CONSTRAINT from ShareLock to ShareUpdateExclusiveLock.
However, that change was unsafe. If DML on tables using the domain had
already started and initialized domain constraint checks before a NOT
VALID constraint was added, it could still insert or update rows that
violated the new constraint.
This commit reverts commit 16a0039dc0d1 so that ALTER DOMAIN ...
VALIDATE CONSTRAINT once again acquires ShareLock on relations using
the domain. Also add an isolation test covering this case.
Author: Chao Li <lic@highgo.com>
Reviewed-by: Fujii Masao <masao.fujii@gmail.com>
Reviewed-by: Álvaro Herrera <alvherre@kurilemu.de>
Discussion: https://postgr.es/m/463C0E1A-4A40-4BCA-839C-9236B80D65EE@gmail.com
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/64797ad97d6e0a476f809979df99e0013c1933b1
Modified Files
--------------
src/backend/commands/typecmds.c | 24 +++++------------
.../isolation/expected/alter-domain-validate.out | 23 +++++++++++++++++
src/test/isolation/isolation_schedule | 1 +
.../isolation/specs/alter-domain-validate.spec | 30 ++++++++++++++++++++++
4 files changed, 61 insertions(+), 17 deletions(-)
Message-ID: <E1wa1Sw-000nIm-29@gemulon.postgresql.org>
Permalink: ../E1wa1Sw-000nIm-29@gemulon.postgresql.org/
Also on: postgresql.org/message-id/E1wa1Sw-000nIm-29@gemulon.postgresql.org
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-committers@postgresql.org
Cc: fujii@postgresql.org, pgsql-committers@lists.postgresql.org
Subject: Re: pgsql: Fix ALTER DOMAIN VALIDATE CONSTRAINT locking
In-Reply-To: <E1wa1Sw-000nIm-29@gemulon.postgresql.org>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox