Re: COPY FREEZE and PD_ALL_VISIBLE - Mailing list pgsql-hackers

From Jeff Janes
Subject Re: COPY FREEZE and PD_ALL_VISIBLE
Date
Msg-id CAMkU=1xewWAyQBPRWkD-U_Z6FWLhJ6mNBBRfgxVU7szuSf=0_g@mail.gmail.com
Whole thread Raw
In response to Re: COPY FREEZE and PD_ALL_VISIBLE  (Simon Riggs <simon@2ndQuadrant.com>)
Responses Re: [HACKERS] COPY FREEZE and PD_ALL_VISIBLE  (Darafei "Komяpa" Praliaskouski <me@komzpa.net>)
List pgsql-hackers
On Tue, Nov 3, 2015 at 6:37 AM, Simon Riggs <simon@2ndquadrant.com> wrote:
> On 3 November 2015 at 15:23, Amit Kapila <amit.kapila16@gmail.com> wrote:
>>
>> On Fri, Oct 23, 2015 at 6:29 AM, Simon Riggs <simon@2ndquadrant.com>
>> wrote:
>>>
>>> On 21 October 2015 at 13:31, Jeff Janes <jeff.janes@gmail.com> wrote:
>>>
>>>> Index-only scans will visit the heap for each tuple until the first
>>>> VACUUM is done.
>>>>
>>>> The first vacuum will read the entire table, but not need to write it
>>>> anymore.  And will create the _vm file.
>>>>
>>>> I think we really want to create _vm file as well as set PD_ALL_VISIBLE,
>>>> but I don't know the best way to do that.  Set a flag somewhere and then
>>>> create it in bulk at the end of the transaction?  Set it bit by bit as the
>>>> pages are extended and initialized?
>>>
>>>
>>> Easy enough to do it at the end of the COPY FREEZE in one step.
>>
>>
>> Here, we might want to consider that setting bit in visibility map
>> will generate WAL log whereas Copy Freeze otherwise skip WAL
>> when wal_level is less than archive.  This can lead to extra disk
>> writes which can slow down Copy Freeze, but OTOH that might
>> be acceptable.
>
>
> I'm building the map as I go, in the latest version of this patch I'm
> working on.

Hi Simon,

Is this still on your radar?  If you would like someone else to pick
it up, can you post the WIP patch you have?

Thanks,

Jeff



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: [NOVICE] numeric data type upper limit.
Next
From: Ryan Murphy
Date:
Subject: Small patch: initdb: "'" for QUOTE_PATH (non-windows)