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

From Heikki Linnakangas
Subject Re: Sync Rep for 2011CF1
Date
Msg-id 4D39A761.1020105@enterprisedb.com
Whole thread Raw
In response to Re: Sync Rep for 2011CF1  (Simon Riggs <simon@2ndQuadrant.com>)
Responses Re: Sync Rep for 2011CF1  (Robert Haas <robertmhaas@gmail.com>)
Re: Sync Rep for 2011CF1  (Simon Riggs <simon@2ndQuadrant.com>)
List pgsql-hackers
On 21.01.2011 15:24, Simon Riggs wrote:
> On Fri, 2011-01-21 at 14:45 +0200, Heikki Linnakangas wrote:
>> * it seems like overkill to not let clients to even connect when
>> allow_standalone_primary=off and no synchronous standbys are available.
>> What if you just want to run a read-only query?
>
> That's what Aidan requested, I agreed and so its there. You're using
> sync rep because of writes, so you have a read-write app. If you allow
> connections then half of the app will work, half will not. Half-working
> isn't very useful, as Aidan eloquently explained. If your app is all
> read-only you wouldn't be using sync rep anyway. That's the argument,
> but I've not got especially strong feelings it has to be this way.

It's also possible that most of your transactions in fact do "set 
synchronous_replication=off", and only a few actually do synchronous 
replication. It would be pretty bad to not allow connections in that 
case. And what if you want to connect to the server to diagnose the 
issue? Oh, you can't... Besides, we're not kicking out existing 
connections, are we? Seems inconsistent to let the old connections live.

IMHO the only reasonable option is to allow connections as usual, and 
only fail (or block forever) at COMMIT.

--   Heikki Linnakangas  EnterpriseDB   http://www.enterprisedb.com


pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: SSI and Hot Standby
Next
From: Robert Haas
Date:
Subject: Re: More detailed auth info