Re: Reproducible GIST index corruption under concurrent updates - Mailing list pgsql-bugs

From Heikki Linnakangas
Subject Re: Reproducible GIST index corruption under concurrent updates
Date
Msg-id b9cee27d-0ce9-7708-d197-580f62e5dab7@iki.fi
Whole thread Raw
In response to Reproducible GIST index corruption under concurrent updates  (Duncan Sands <duncan.sands@deepbluecap.com>)
Responses Re: Reproducible GIST index corruption under concurrent updates
List pgsql-bugs
On 20/01/2021 10:23, Duncan Sands wrote:
>> The comment change was correct, but the condition used &&. Should've been ||.
>> There is another copy of basically the same condition earlier in the function
>> that was changed correctly, but I blundered this one. Oops.
>>
>> The attached patch fixes this. I also added an assertion to the
>> gistplacetopage() function, to check that we never try to insert on a deleted
>> page. This bug could've made that happen too, although in this case the problem
>> was a concurrent split, not a deletion. I'll backpatch and push this tomorrow.
>>
>> Many thanks for the easy reproducer script, Duncan!
> 
> No problem Heikki, thanks for the quick fix.

Pushed as commit 6b4d3046f4, and backpatched down to version 12, where 
this bug was introduced. It will appear in the next minor release.

- Heikki



pgsql-bugs by date:

Previous
From: Duncan Sands
Date:
Subject: Re: Reproducible GIST index corruption under concurrent updates
Next
From:
Date:
Subject: Bug Report | Using ts_headline with the <-> operator