Re: [PATCH] Rebuild CHECK constraints after generated column SET EXPRESSION

From: solai v <solai(dot)cdac(at)gmail(dot)com>
To: jian he <jian(dot)universality(at)gmail(dot)com>
Cc: Ayush Tiwari <ayushtiwari(dot)slg01(at)gmail(dot)com>, Zsolt Parragi <zsolt(dot)parragi(at)percona(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [PATCH] Rebuild CHECK constraints after generated column SET EXPRESSION
Date: 2026-05-19 05:31:27
Message-ID: CAF0whufxMsRLvoGAsxAouboBj_31P07f0Etexgwh7d6fnyOu_w@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi
I tested v5-0001-recreate-wholerow-dependent-while-ALTER-COLUMN-SET-EXPRESSION.patch
on the current master.The patch applied cleanly and PostgreSQL built
successfully.
I was able to reproduce the issue on unpatched master using a
whole-row CHECK constraint referencing the generated column
through:CHECK ((gtest).b IS NOT NULL).
Without the patch,ALTER COLUMN SET EXPRESSION succeeded even though
existing rows no longer satisfied the constraint.
After applying the patch ,the same ALTER TABLE command correctly
failed with : ERROR:check constraint "whole_row_check" of relation
"gtest" is violated by some row.
The fix and regression coverage look good to me.

Regards,
Solai

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message vellaipandiyan sm 2026-05-19 05:42:51 Review observations for partial REFRESH MATERIALIZED VIEW patc
Previous Message Chao Li 2026-05-19 03:51:05 Re: Should IGNORE NULLS cache nullness for volatile arguments?