Re: Bug in ginRedoRecompress that causes opaque data on page to be overrun

Alexander Korotkov <a.korotkov@postgrespro.ru>

From: Alexander Korotkov <a.korotkov@postgrespro.ru>
To: sivasubr@amazon.com
Cc: Sawada Masahiko <sawada.mshk@gmail.com>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2018-09-09T18:53:58Z
Lists: pgsql-hackers
On Thu, Sep 6, 2018 at 9:02 PM R, Siva <sivasubr@amazon.com> wrote:

> I'm also running into this assert with the workload, I think my patch is
> not handling the case where the action is add items on the last segment
> of the page correctly. I'm still investigating the issue further to find
> the
> source of the bug.
>
> Meanwhile I reviewed your patch and it looks good to me. I agree that
> copying out the entire tail out to the scratch space in one shot vs copying
> out every segment reduces the number of memcpy calls and simplifies
> the solution overall. Let us go ahead with this patch.
>

Thank you for review!  Pushed with minor beautification.

------
Alexander Korotkov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company

Commits

  1. Fix past pd_upper write in ginRedoRecompress()