19.07.2018, 15:20, "Heikki Linnakangas" <hlinn...@iki.fi>:
On 19/07/18 13:52, Andrey Borodin wrote:
Hi!19 июля 2018 г., в 1:12, Heikki Linnakangas <hlinn...@iki.fi>
написал(а):
Yeah, please, I think this is the way to go.
Here's v11 divided into proposed steps.
Thanks, one quick question:/* We should not unlock buffer if we are going to jump left */
if (needScan)
{
GistBDItem *ptr = (GistBDItem *) palloc(sizeof(GistBDItem));
ptr->buffer = buffer;
ptr->next = bufferStack;
bufferStack = ptr;
}
else
UnlockReleaseBuffer(buffer);
Why? I don't see any need to keep the page locked, when we "jump left".
Because it can split to the left again, given that we release lock.
Best regards, Andrey Borodin.