From: | Andres Freund <andres(at)anarazel(dot)de> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Peter Geoghegan <pg(at)bowt(dot)ie> |
Cc: | pgsql-hackers(at)lists(dot)postgresql(dot)org |
Subject: | Re: PANIC: wrong buffer passed to visibilitymap_clear |
Date: | 2021-04-09 23:32:03 |
Message-ID: | 20210409233203.3khg3s5iw34g4xrc@alap3.anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 2021-04-09 16:27:39 -0700, Andres Freund wrote:
> Just looking at the code in heap_update: I'm a bit confused about
> RelationGetBufferForTuple()'s vmbuffer and vmbuffer_other
> arguments. It looks like it's not at all clear which of the two
> arguments will have the vmbuffer for which of the pages?
>
> if (otherBuffer == InvalidBuffer || targetBlock <= otherBlock)
> GetVisibilityMapPins(relation, buffer, otherBuffer,
> targetBlock, otherBlock, vmbuffer,
> vmbuffer_other);
> else
> GetVisibilityMapPins(relation, otherBuffer, buffer,
> otherBlock, targetBlock, vmbuffer_other,
> vmbuffer);
Oh, I missed that the arguments to GetVisibilityMapPins are
appropriately swapped too.
Greetings,
Andres Freund
From | Date | Subject | |
---|---|---|---|
Next Message | Andres Freund | 2021-04-09 23:47:28 | Re: pgsql: autovacuum: handle analyze for partitioned tables |
Previous Message | Andres Freund | 2021-04-09 23:30:44 | Re: PANIC: wrong buffer passed to visibilitymap_clear |