Re: BUG #14150: Attempted to delete invisible tuple

From: Oskari Saarenmaa <os(at)aiven(dot)io>
To: Andres Freund <andres(at)anarazel(dot)de>, Peter Geoghegan <pg(at)heroku(dot)com>
Cc: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, Peter Tripp <peter(at)chartio(dot)com>, Virendra Negi <virendra(at)idyllic-software(dot)com>, pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #14150: Attempted to delete invisible tuple
Date: 2016-08-05 21:37:08
Message-ID: 6e11604c-d8a1-93d3-63f2-a02c3048afce@aiven.io
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

01.08.2016, 01:31, Andres Freund kirjoitti:
> On 2016-07-29 17:37:21 -0700, Peter Geoghegan wrote:
>> On Wed, Jul 27, 2016 at 6:12 PM, Peter Geoghegan <pg(at)heroku(dot)com> wrote:
>>> On Wed, Jul 27, 2016 at 6:04 PM, Andres Freund <andres(at)anarazel(dot)de> wrote:
>>>> That it needs a test, or that it's easy to do?
>>>
>>> That it's easy to write one.
>>
>> I'll be more concrete: I don't see what choke point is available to
>> make control yield after the pre-check determines there is no
>> conflict, but before index tuple insertion determines that there is in
>> fact a conflict (to reliably trigger a failed specualtive
>> insertion/super deletion).
>
> An expression index over a function acquiring a lock looks like it
> should do the trick.
>
> Are you looking in writing an updated patch? It seems we're on one page
> of the rough direction.

Thanks for the review and the locking index idea for a test case.
Attached a further simplified patch to fix the issue plus an isolation
test case for it.

Cheers,
Oskari

Attachment Content-Type Size
0001-Fix-deletion-of-speculatively-inserted-TOAST-on-conf.patch text/x-patch 9.4 KB

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Michael Paquier 2016-08-06 12:17:42 Re: jsonb_array_elements issue
Previous Message Bruce Momjian 2016-08-05 18:41:48 Re: pg_size_pretty, SHOW, and spaces