pg_ctl failover Re: Latches, signals, and waiting

Fujii Masao <masao.fujii@gmail.com>

From: Fujii Masao <masao.fujii@gmail.com>
To: Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, pgsql-hackers@postgresql.org
Date: 2011-01-12T15:14:56Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Remove rare corner case for data loss when triggering standby server.

Attachments

On Wed, Sep 15, 2010 at 11:14 PM, Heikki Linnakangas
<heikki.linnakangas@enterprisedb.com> wrote:
> On 15/09/10 16:55, Tom Lane wrote:
>>
>> So I'm wondering if we couldn't eliminate the five-second sleep
>> requirement here too.  It's problematic anyhow, since somebody looking
>> for energy efficiency will still feel it's too short, while somebody
>> concerned about fast failover will feel it's too long.
>
> Yep.
>
>>  Could the
>> standby triggering protocol be modified so that it involves sending a
>> signal, not just creating a file?
>
> Seems reasonable, at least if we still provide an option for more frequent
> polling and no need to send signal.
>
>> (One issue is that it's not clear what that'd translate to on Windows.)
>
> pg_ctl failover ? At the moment, the location of the trigger file is
> configurable, but if we accept a constant location like "$PGDATA/failover"
> pg_ctl could do the whole thing, create the file and send signal. pg_ctl on
> Window already knows how to send the "signal" via the named pipe signal
> emulation.

The attached patch implements the above-mentioned pg_ctl failover.

Comments? Objections?

Regards,

-- 
Fujii Masao
NIPPON TELEGRAPH AND TELEPHONE CORPORATION
NTT Open Source Software Center