On Tue, Aug 11, 2015 at 2:57 PM, Michael Paquier
<michael.paquier@gmail.com> wrote:
> On Tue, Aug 11, 2015 at 2:42 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> Tatsuo Ishii <ishii@postgresql.org> writes:
>>> I think this is because pg_control on the standby remembers that the
>>> previous primary server's max_connections = 1100 even if the standby
>>> server fails to start. Shouldn't we update pg_control file only when
>>> standby succeeds to start?
>>
>> Somebody refresh my memory as to why we have this restriction (that is,
>> slave's max_connections >= master's max_connections) in the first place?
>> Seems like it should not be a necessary requirement, and working towards
>> getting rid of it would be far better than any other answer.
>
> If I recall correctly, that's because KnownAssignedXIDs and the lock
> table need to be large enough on the standby for the largest snapshot
> possible (procarray.c).
... And the maximum number of locks possible on master (for the lock
table, wasn't it for the concurrent number of AccessExclusiveLocks,
btw?).
--
Michael