Re: WALWriter active during recovery - Mailing list pgsql-hackers

From Fujii Masao
Subject Re: WALWriter active during recovery
Date
Msg-id CAHGQGwHn8tp23DOJTg_R-J+KWO6vvOOXDsWD0hUp_M=rO+vrsw@mail.gmail.com
Whole thread Raw
In response to Re: WALWriter active during recovery  (Fujii Masao <masao.fujii@gmail.com>)
Responses Re: WALWriter active during recovery  (Simon Riggs <simon@2ndQuadrant.com>)
List pgsql-hackers
On Thu, Mar 5, 2015 at 5:22 PM, Fujii Masao <masao.fujii@gmail.com> wrote:
> On Thu, Dec 18, 2014 at 6:43 PM, Fujii Masao <masao.fujii@gmail.com> wrote:
>> On Tue, Dec 16, 2014 at 3:51 AM, Simon Riggs <simon@2ndquadrant.com> wrote:
>>> Currently, WALReceiver writes and fsyncs data it receives. Clearly,
>>> while we are waiting for an fsync we aren't doing any other useful
>>> work.
>>>
>>> Following patch starts WALWriter during recovery and makes it
>>> responsible for fsyncing data, allowing WALReceiver to progress other
>>> useful actions.
>
> With the patch, replication didn't work fine in my machine. I started
> the standby server after removing all the WAL files from the standby.
> ISTM that the patch doesn't handle that case. That is, in that case,
> the standby tries to start up walreceiver and replication to retrieve
> the REDO-starting checkpoint record *before* starting up walwriter
> (IOW, before reaching the consistent point). Then since walreceiver works
> without walwriter, no received WAL data cannot be fsync'd in the standby.
> So replication cannot advance furthermore. I think that walwriter needs
> to start before walreceiver starts.
>
> I just marked this patch as Waiting on Author.

This patch was moved to current CF with the status "Needs review".
But there are already some review comments which have not been addressed yet,
so I marked the patch as "Waiting on Author" again.

Regards,

-- 
Fujii Masao



pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: drop/truncate table sucks for large values of shared buffers
Next
From: Simon Riggs
Date:
Subject: Re: drop/truncate table sucks for large values of shared buffers