Re: BUG #14150: Attempted to delete invisible tuple - Mailing list pgsql-bugs

From Peter Geoghegan
Subject Re: BUG #14150: Attempted to delete invisible tuple
Date
Msg-id CAM3SWZSN9Dinfr+pujH5RHwycWgT68pkypYs5MUY2u2EjrN6tg@mail.gmail.com
Whole thread Raw
In response to Re: BUG #14150: Attempted to delete invisible tuple  (Andres Freund <andres@anarazel.de>)
Responses Re: BUG #14150: Attempted to delete invisible tuple
List pgsql-bugs
On Wed, Jul 6, 2016 at 4:33 PM, Andres Freund <andres@anarazel.de> wrote:
>> We didn't simply neglect to make heap_abort_speculative() consider
>> TOAST at all, though.
>
> Well, not quite, but nearly. Afaics it currently can only work if the
> toasted columns have been inserted by a different command, before the
> INSERT ON CONFLICT does anything. I don't see how it can work for newly
> inserted toast data.  When heap_abort_speculative deletes toast data,
> when would it *ever* not fail if the same command executed the toast
> data?

Why would the toasted data ever not be newly inserted in practice? Do
you mean that that would work, where it ever to occur, though in
practice it could not, since this concerns only cases that take the
path with heap_insert()? And so, in simpler words, you believe that
any heap_abort_speculative() call to toast_delete() will cause this
error to be raised?

--
Peter Geoghegan

pgsql-bugs by date:

Previous
From: Peter Geoghegan
Date:
Subject: Re: BUG #14150: Attempted to delete invisible tuple
Next
From: Peter Geoghegan
Date:
Subject: Re: BUG #14150: Attempted to delete invisible tuple