Re: DELETE FOR PORTION OF bypasses view WITH CHECK OPTION for leftover rows

From: Paul A Jungwirth <pj(at)illuminatedcomputing(dot)com>
To: Melanie Plageman <melanieplageman(at)gmail(dot)com>
Cc: Zsolt Parragi <zsolt(dot)parragi(at)percona(dot)com>, pgsql-bugs(at)lists(dot)postgresql(dot)org, Peter Eisentraut <peter(at)eisentraut(dot)org>
Subject: Re: DELETE FOR PORTION OF bypasses view WITH CHECK OPTION for leftover rows
Date: 2026-08-12 23:18:59
Message-ID: CA+renyVR33JsWYNwkL7Y8oqMWfsL7_BUUPggx_OaUhBsHAG3TA@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Wed, Aug 12, 2026 at 2:30 PM Melanie Plageman
<melanieplageman(at)gmail(dot)com> wrote:
>
> On Wed, Jul 22, 2026 at 2:43 PM Zsolt Parragi <zsolt(dot)parragi(at)percona(dot)com> wrote:
> >
> > While testing FOR PORTION OF I noticed that DELETE FOR PORTION OF on a
> > view ignores the view's WITH CHECK OPTION for the temporal leftover
> > rows it inserts.
>
> [RMT hat]
>
> It's been a few weeks since this was reported, and there hasn't been
> engagement by the feature authors. Is this on your radar?
> I added an open item [1].

Thanks Melanie! I'm sorry I missed this before.

I can reproduce the bug. The fix looks good to me.

Here are some slight revisions: I added doc updates and a couple extra
regress lines (verifying the same cases, but for UPDATE too). And I
expanded the comment to explain why this is needed for DELETE but not
UPDATE, since that wasn't obvious to me right away.

Yours,

--
Paul ~{:-)
pj(at)illuminatedcomputing(dot)com

Attachment Content-Type Size
v2-0001-Enforce-WITH-CHECK-OPTION-on-DELETE-FOR-PORTION-O.patch text/x-patch 9.5 KB

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Michael Paquier 2026-08-13 08:27:42 Re: BUG #19612: SEGV in ParseConfigFp() in guc-file.l
Previous Message Melanie Plageman 2026-08-12 21:30:18 Re: DELETE FOR PORTION OF bypasses view WITH CHECK OPTION for leftover rows