public inbox for [email protected]  
help / color / mirror / Atom feed
From: Andrew Dunstan <[email protected]>
To: jian he <[email protected]>
To: Zsolt Parragi <[email protected]>
Cc: Amul Sul <[email protected]>
Cc: Robert Treat <[email protected]>
Cc: Kirill Reshke <[email protected]>
Cc: PostgreSQL-development <[email protected]>
Subject: Re: alter check constraint enforceability
Date: Wed, 11 Mar 2026 16:17:09 -0400
Message-ID: <[email protected]> (raw)
In-Reply-To: <CACJufxHRbDMT6Ge=myw0KL2Bz_rkf+fGnLg174qTuiaLaje55w@mail.gmail.com>
References: <CACJufxHCh_FU-FsEwsCvg9mN6-5tzR6H9ntn+0KUgTCaerDOmg@mail.gmail.com>
	<CACJufxFJFpU0V6zW6nic8_K9NOZqu1g5MOuuSRPTJ9xSAmeNrw@mail.gmail.com>
	<CABV9wwNF45wmhs3gFH7qcyEVQjREQL1y=2ARzLgY__fNT2tWpw@mail.gmail.com>
	<CACJufxFY=GkptsiH8X=VdyYAnNE_=u5j6WyDufTste6CuzRvnw@mail.gmail.com>
	<CALdSSPg7x+zfKaCkq_bBbz7q8nYu93G3-tK+3si_kPwOcnU0iw@mail.gmail.com>
	<CAJSLCQ0rgBK5cgXZzZSHnyBWi95Ngkky8+c1Jf_S0z_x4x6Zrw@mail.gmail.com>
	<CACJufxFsSO7yA0orXwwRROXePeW-qSEOuJbRGHFFZLy8e6pLzA@mail.gmail.com>
	<CAAJ_b975gj8d8djaSxNBcJ+X3Wd_9of-Q3uZm=63SepUiH=2ZQ@mail.gmail.com>
	<CACJufxEDifbBUL6YCUuc0RggKfgbEmUX6t+K-njLxkWBdEdgAg@mail.gmail.com>
	<CAAJ_b95QpTcE6WcbiNUy3Xzs3Bt7MFgofSgQLdzY+B-7cMVyeA@mail.gmail.com>
	<CACJufxFPcaUz5SyqXXNVaV0BvrhZgHFLugdZa6-jzLCciknbJA@mail.gmail.com>
	<CAN4CZFO+NiypH24M2j1TWo=WeoQN8h60-SESeKJSsCwJJ+2D2g@mail.gmail.com>
	<CACJufxHRbDMT6Ge=myw0KL2Bz_rkf+fGnLg174qTuiaLaje55w@mail.gmail.com>


On 2026-02-21 Sa 9:42 AM, jian he wrote:
> On Wed, Feb 11, 2026 at 3:37 AM Zsolt Parragi <[email protected]> wrote:
>> Hello
>>
>> - if (cmdcon->alterEnforceability &&
>> - ATExecAlterFKConstrEnforceability(wqueue, cmdcon, conrel, tgrel,
>> -   currcon->conrelid, currcon->confrelid,
>> -   contuple, lockmode, InvalidOid,
>> -   InvalidOid, InvalidOid, InvalidOid))
>> + if (cmdcon->alterEnforceability)
>> + {
>> + if (currcon->contype == CONSTRAINT_FOREIGN)
>> + ATExecAlterFKConstrEnforceability(wqueue, cmdcon, conrel, tgrel,
>> +   currcon->conrelid,
>> +   currcon->confrelid,
>> +   contuple, lockmode,
>> +   InvalidOid, InvalidOid,
>> +   InvalidOid, InvalidOid);
>> + else if (currcon->contype == CONSTRAINT_CHECK)
>> + ATExecAlterCheckConstrEnforceability(wqueue, cmdcon, conrel,
>> + contuple, recurse, false,
>> + lockmode);
>>    changed = true;
>>
>> Isn't this a behavior change?
>>
> Hi.
> You are right, I missed this minor detail.
> Now, I changed it to
>
> +    if (cmdcon->alterEnforceability)
> +    {
> +        if (currcon->contype == CONSTRAINT_FOREIGN)
> +            changed = ATExecAlterFKConstrEnforceability(wqueue,
> cmdcon, conrel, tgrel,
> +                                                        currcon->conrelid,
> +                                                        currcon->confrelid,
> +                                                        contuple, lockmode,
> +                                                        InvalidOid, InvalidOid,
> +                                                        InvalidOid,
> InvalidOid);
> +        else if (currcon->contype == CONSTRAINT_CHECK)
> +            changed = ATExecAlterCheckConstrEnforceability(wqueue,
> cmdcon, conrel,
> +                                                           contuple,
> recurse, false,
> +                                                           lockmode);
> +    }
>
>
>


pushed with minor tweaks.


cheers


andrew

--
Andrew Dunstan
EDB: https://www.enterprisedb.com






view thread (15+ messages)

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: [email protected]
  Cc: [email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
  Subject: Re: alter check constraint enforceability
  In-Reply-To: <[email protected]>

* 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