On Tue, 2022-09-13 at 16:13 +0200, Matthias van de Meent wrote:
> On Tue, 13 Sept 2022 at 15:45, Tom Lane wrote:
> > Laurenz Albe writes:
> > > But once they are deleted or updated, even the transaction that created
> > > them cannot
> > > see them any more, right?
> >
> > I would not trust tha
On Tue, 13 Sept 2022 at 15:45, Tom Lane wrote:
>
> Laurenz Albe writes:
> > But once they are deleted or updated, even the transaction that created
> > them cannot
> > see them any more, right?
>
> I would not trust that claim very far. The transaction might have active
> snapshots with a comma
Laurenz Albe writes:
> But once they are deleted or updated, even the transaction that created them
> cannot
> see them any more, right?
I would not trust that claim very far. The transaction might have active
snapshots with a command ID between the times of insertion and deletion.
(Consider a
On Tue, 13 Sept 2022 at 12:40, Pantelis Theodosiou wrote:
>
> Forgive me if this is not related but if there is a savepoint between
> the insertion and deletion, wouldn't it be possible for the
> transaction to recover the deleted tuples?
Savepoints result in changed TransactionIds (well, subtran
On Tue, 13 Sep 2022, 12:04 Laurenz Albe, wrote:
>
> On Tue, 2022-09-13 at 11:47 +0300, Nikita Malakhov wrote:
>> Please correct me if I'm wrong, despite tuples being inserted and deleted by
>> the same
>> transaction - they are visible inside the transaction and usable by it, so
>> considering t
On Tue, Sep 13, 2022 at 11:04 AM Laurenz Albe wrote:
>
> On Tue, 2022-09-13 at 11:47 +0300, Nikita Malakhov wrote:
> > On Tue, Sep 13, 2022 at 11:06 AM Laurenz Albe
> > wrote:
> > > Shouldn't such tuples be considered dead right away, even if the inserting
> > > transaction is still active? Tha
On Tue, 2022-09-13 at 11:47 +0300, Nikita Malakhov wrote:
> On Tue, Sep 13, 2022 at 11:06 AM Laurenz Albe
> wrote:
> > Shouldn't such tuples be considered dead right away, even if the inserting
> > transaction is still active? That would allow cleaning them up even before
> > the transaction is
Hi!
Please correct me if I'm wrong, despite tuples being inserted and deleted
by the same
transaction - they are visible inside the transaction and usable by it, so
considering them
dead and cleaning up during execution is a bad idea until the
transaction is ended.
On Tue, Sep 13, 2022 at 11:06 A
Shouldn't such tuples be considered dead right away, even if the inserting
transaction is still active? That would allow cleaning them up even before
the transaction is done.
There is this code in HeapTupleSatisfiesVacuumHorizon:
else if
(TransactionIdIsCurrentTransactionId(HeapTupleHea