Re: COPY FREEZE and setting PD_ALL_VISIBLE/visibility map bits

Ibrar Ahmed <ibrar.ahmad@gmail.com>

From: Ibrar Ahmed <ibrar.ahmad@gmail.com>
To: Justin Pryzby <pryzby@telsasoft.com>, pgsql-hackers <pgsql-hackers@postgresql.org>, Andres Freund <andres@anarazel.de>
Date: 2020-03-25T14:37:22Z
Lists: pgsql-hackers
On Tue, Mar 24, 2020 at 10:06 PM Ibrar Ahmed <ibrar.ahmad@gmail.com> wrote:

>
>
> On Fri, Mar 13, 2020 at 6:58 AM Justin Pryzby <pryzby@telsasoft.com>
> wrote:
>
>>
>> Thanks for picking up this patch.  There's a minor typo:
>>
>> +                        * readable outside of this sessoin. Therefore
>> doing IO here isn't
>>
>> => session
>>
>> --
>> Justin
>>
>
> Thanks, please see the updated and rebased patch. (master
> 17a28b03645e27d73bf69a95d7569b61e58f06eb)
>
> --
> Ibrar Ahmed
>

Andres while fixing the one FIXME in the patch

"            visibilitymap_pin(relation, BufferGetBlockNumber(buffer),
&vmbuffer);


            /*

             * FIXME: setting recptr here is a dirty dirty hack, to prevent

             * visibilitymap_set() from WAL logging.
             *
"
I am not able to see any scenario where recptr is not set before reaching
to that statement. Can you clarify why you think recptr will not be set at
that statement?


-- 
Ibrar Ahmed

Commits

  1. Fix COPY FREEZE with CLOBBER_CACHE_ALWAYS

  2. Set PD_ALL_VISIBLE and visibility map bits in COPY FREEZE

  3. docs: client certificates are always sent to the server

  4. Mark commit and abort WAL records with XLR_SPECIAL_REL_UPDATE.

  5. docs: land height is "elevation", not "altitude"

  6. Improve the internal implementation of ereport().