Re: Sync Rep for 2011CF1 - Mailing list pgsql-hackers

From Simon Riggs
Subject Re: Sync Rep for 2011CF1
Date
Msg-id 1297870600.1747.30144.camel@ebony
Whole thread Raw
In response to Re: Sync Rep for 2011CF1  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: Sync Rep for 2011CF1  (Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>)
List pgsql-hackers
On Tue, 2011-02-15 at 12:08 -0500, Robert Haas wrote:
> On Mon, Feb 14, 2011 at 12:25 AM, Fujii Masao <masao.fujii@gmail.com> wrote:
> > On Fri, Feb 11, 2011 at 4:06 AM, Heikki Linnakangas
> > <heikki.linnakangas@enterprisedb.com> wrote:
> >> I added a XLogWalRcvSendReply() call into XLogWalRcvFlush() so that it also
> >> sends a status update every time the WAL is flushed. If the walreceiver is
> >> busy receiving and flushing, that would happen once per WAL segment, which
> >> seems sensible.
> >
> > This change can make the callback function "WalRcvDie()" call ereport(ERROR)
> > via XLogWalRcvFlush(). This looks unsafe.
> 
> Good catch.  Is the cleanest solution to pass a boolean parameter to
> XLogWalRcvFlush() indicating whether we're in the midst of dying?

Surely if you do this then sync rep will fail to respond correctly if
WalReceiver dies.

Why is it OK to write to disk, but not OK to reply?

-- Simon Riggs           http://www.2ndQuadrant.com/books/PostgreSQL Development, 24x7 Support, Training and Services



pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: Sync Rep for 2011CF1
Next
From: Robert Haas
Date:
Subject: Re: multiset patch review