Re: alter check constraint enforceability - Mailing list pgsql-hackers

From Robert Treat
Subject Re: alter check constraint enforceability
Date
Msg-id CAJSLCQ0rgBK5cgXZzZSHnyBWi95Ngkky8+c1Jf_S0z_x4x6Zrw@mail.gmail.com
Whole thread Raw
In response to Re: alter check constraint enforceability  (Kirill Reshke <reshkekirill@gmail.com>)
List pgsql-hackers
On Mon, Aug 11, 2025 at 10:00 AM Kirill Reshke <reshkekirill@gmail.com> wrote:
> On Mon, 11 Aug 2025 at 14:53, jian he <jian.universality@gmail.com> wrote:
> > On Thu, Aug 7, 2025 at 7:35 AM Robert Treat <rob@xzilla.net> wrote:
> > >
> > > + if (rel->rd_rel->relkind == RELKIND_RELATION &&
> > > +     cmdcon->is_enforced &&
> > > +     !currcon->conenforced)
> > >
> > > i think I have convinced myself that this is correct, but maybe I will
> > > ask you if you had any concerns that this needed to also consider
> > > RELKIND_PARTITIONED_TABLE as well?
> > >
> >
> > ATExecAlterCheckConstrEnforceability itself will be recursive to all
> > the children.
> > AlterConstrUpdateConstraintEntry is responsible for changing the catalog state.
> > except the changing the catalog state, if we change the check
> > constraint from NOT ENFORCED
> > to ENFORCED,  we also need to verify it in phase 3.
> > that's the purpose of
> > > + if (rel->rd_rel->relkind == RELKIND_RELATION &&
> > > +     cmdcon->is_enforced &&
> > > +     !currcon->conenforced)
> >
> > partitioned tables don't have storage, phase3 table scan to verify
> > check constraint on partitioned table
> > don't have effect.
> >
> > also partitioned table check constraint (name, definition
> > (pg_constraint.conbin) must match with partition
> > otherwise partition can be attached to the partitioned table.
> > so here you don't need to consider RELKIND_PARTITIONED_TABLE.
>
>
> Hi!
> I looked at v3.
>
> Should we rename `ATExecAlterConstrEnforceability` to
> `ATExecAlterFKConstrEnforceability `?
>

+1

Robert Treat
https://xzilla.net



pgsql-hackers by date:

Previous
From: Alexey Makhmutov
Date:
Subject: Re: High CPU consumption in cascade replication with large number of walsenders
Next
From: "Matheus Alcantara"
Date:
Subject: Re: postgres_fdw: Use COPY to speed up batch inserts