Re: [BUG] failed assertion in EnsurePortalSnapshotExists() - Mailing list pgsql-hackers

From Drouvot, Bertrand
Subject Re: [BUG] failed assertion in EnsurePortalSnapshotExists()
Date
Msg-id be17b55d-6282-e2e1-ecca-b2b717979ffb@amazon.com
Whole thread Raw
In response to Re: [BUG] failed assertion in EnsurePortalSnapshotExists()  (Ranier Vilela <ranier.vf@gmail.com>)
Responses Re: [BUG] failed assertion in EnsurePortalSnapshotExists()  (Ranier Vilela <ranier.vf@gmail.com>)
List pgsql-hackers

Hi,

On 9/29/21 12:59 PM, Ranier Vilela wrote:

Em qua., 29 de set. de 2021 às 06:55, Drouvot, Bertrand <bdrouvot@amazon.com> escreveu:
I'm also inclined to #1.
I have a stupid question, why duplicate PushActiveSnapshot?
Wouldn't one function be better?

PushActiveSnapshot(Snapshot snap, int as_level);

Sample calls:
PushActiveSnapshot(GetTransactionSnapshot(), GetCurrentTransactionNestLevel());
PushActiveSnapshot(queryDesc->snapshot, GetCurrentTransactionNestLevel());
PushActiveSnapshot(GetTransactionSnapshot(), portal->createSubid);

I would say because that could "break" existing extensions for example.

Adding a new function prevents "updating" existing extensions making use of PushActiveSnapshot().

Thanks

Bertrand

pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: POC: Cleaning up orphaned files using undo logs
Next
From: Daniel Gustafsson
Date:
Subject: Re: Trap errors from streaming child in pg_basebackup to exit early