On Thu, 2010-04-29 at 10:55 +0300, Heikki Linnakangas wrote:
> Should we change the default to recovery_connections=off ? It is a quite
> big change in default behavior over previous releases that hot standby
> is enabled by default, so maybe that would be the right thing to do anyway.
>
> Or maybe add a hint to the above, "disable hot standby by setting
> recovery_connections=off, or set wal_level='hot_standby' in the primary"
I've been waiting for this suggestion, a clear knock-on effect from your
earlier changes. If we just have a static default its bad either way.
The most sensible way is to make the default act intelligently depending
upon what it finds in the control file. If WAL contains hot_standby
info, then recovery_connections should be on by default, though can be
turned off explicitly if required. If WAL does not contain hot_standby
info we then we throw a WARNING and continue as if recovery_connections
= off, or if recovery_connections is specified explicitly then we should
throw an ERROR so that the user knows it won't be possible to use this.
I think that means we'd need to change recovery_connections to have 2 or
3 values, but non-boolean:
recovery_connections = auto (default) | off
or
recovery_connections = auto (default) | on | off
and I would suggest removing it from postgresql.conf.sample
-- Simon Riggs www.2ndQuadrant.com