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 17:13:08
Message-ID: 1784255.1624381988@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I wrote:
> 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.

Here we go. This test case gives "cannot fetch toast data without an
active snapshot" in v11 and v12 branch tips. Since those branches lack
the 73b06cf89 optimization, they push a snapshot while calling the
SQL-language function, thus it doesn't complain. But what comes back
is toasted, and then we fail trying to detoast it.

regards, tom lane

Attachment Content-Type Size
simple-expr-fix-with-test-case-v12.patch text/x-diff 3.1 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Emre Hasegeli 2021-06-22 17:21:28 Re: Decouple operator classes from index access methods
Previous Message Tom Lane 2021-06-22 17:05:52 Re: Decouple operator classes from index access methods