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/