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

From Andrew Dunstan
Subject Re: alter check constraint enforceability
Date
Msg-id a4a8a573-fae1-4a93-bc44-e7ecabbe3e9c@dunslane.net
Whole thread Raw
In response to Re: alter check constraint enforceability  (jian he <jian.universality@gmail.com>)
List pgsql-hackers
On 2026-02-21 Sa 9:42 AM, jian he wrote:
> On Wed, Feb 11, 2026 at 3:37 AM Zsolt Parragi <zsolt.parragi@percona.com> 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




pgsql-hackers by date:

Previous
From: Laurenz Albe
Date:
Subject: Re: Change initdb default to the builtin collation provider
Next
From: Nathan Bossart
Date:
Subject: Re: Speed up COPY FROM text/CSV parsing using SIMD