On 2025-Mar-18, Pavel Stehule wrote:

> Maybe I found a bug
> 
> (2025-03-18 19:28:06) postgres=# create table foo(a int constraint gzero
> check(a > 10) NOT ENFORCED);
> CREATE TABLE
> (2025-03-18 19:29:37) postgres=# insert into foo values(0);
> INSERT 0 1
> (2025-03-18 19:29:49) postgres=# insert into foo values(6);
> INSERT 0 1
> (2025-03-18 19:29:55) postgres=# alter table foo alter constraint gzero
> enforced;
> ERROR:  FOREIGN KEY constraints cannot be marked ENFORCED
> LINE 1: alter table foo alter constraint gzero enforced;
> 
> I know so altering enforcing constraint is not supported yet, but the error
> message is surely wrong

Yep, this is a bug all right -- I reported this and related problems a
few days ago [1].  There's a proposal in that thread for how to fix this
(see Amul's email [2] and my followup), but I haven't had time to fully
implement it.  If you want to give it a couple of hours to complete it,
that'd be great.  I have a couple of patches that I need to handle
before coming back to that.

[1] https://postgr.es/m/202503041822.aobpqke3igvb@alvherre.pgsql
[2] 
https://postgr.es/m/caaj_b97hd-jmts7ajgu6tdbczdx_kyukxg+k-dtymoieg+g...@mail.gmail.com

-- 
Álvaro Herrera         PostgreSQL Developer  —  https://www.EnterpriseDB.com/


Reply via email to