On 3 November 2015 at 15:23, Amit Kapila <amit.kapil...@gmail.com> wrote:
> On Fri, Oct 23, 2015 at 6:29 AM, Simon Riggs <si...@2ndquadrant.com> > wrote: > >> On 21 October 2015 at 13:31, Jeff Janes <jeff.ja...@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. -- Simon Riggs http://www.2ndQuadrant.com/ <http://www.2ndquadrant.com/> PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services