Re: Assertion failure in HEAD and 13 after calling COMMIT in a stored proc

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Michael Paquier <michael(at)paquier(dot)xyz>
Cc: Jim Nasby <nasbyj(at)amazon(dot)com>, "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Assertion failure in HEAD and 13 after calling COMMIT in a stored proc
Date: 2021-06-22 15:48:46
Message-ID: 1756306.1624376926@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I wrote:
> Hmm. I think the real issue here is that commit 84f5c2908 did
> not cover the "simple expression" code path in plpgsql. We
> need to re-establish an outer snapshot when the next thing
> that happens after COMMIT is a simple expression, too.

The attached seems to be enough to resolve Jim's example. I'd like
to invent a test case that involves a detoast of the simple
expression's result, too, to show that transiently pushing a
snapshot for the duration of the expression is not the right fix.

regards, tom lane

Attachment Content-Type Size
provide-portal-snapshot-for-simple-exprs-too.patch text/x-diff 1.0 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Geoghegan 2021-06-22 16:07:30 Re: Maintaining a list of pgindent commits for "git blame" to ignore
Previous Message Andrew Dunstan 2021-06-22 15:45:51 Re: intermittent failures in Cygwin from select_parallel tests