Re: How should the waiting backends behave in sync rep?
От | Robert Haas |
---|---|
Тема | Re: How should the waiting backends behave in sync rep? |
Дата | |
Msg-id | AANLkTimDUiRrrWzZ2ZXWSRfeP5tHm9PGmpp6zfqaFpte@mail.gmail.com обсуждение исходный текст |
Ответ на | How should the waiting backends behave in sync rep? (Fujii Masao <masao.fujii@gmail.com>) |
Ответы |
Re: How should the waiting backends behave in sync rep?
|
Список | pgsql-hackers |
On Tue, Mar 8, 2011 at 10:06 AM, Fujii Masao <masao.fujii@gmail.com> wrote: > How should the backends waiting for replication behave when > synchrnous_standby_names > is set to '' and the configuration file is reloaded? Now they keep > waiting for the ACK from the > standby. But I think that it's more natural for them to get out of the > wait state and complete > the transaction in that case. If we'll change them in that way, we > would no longer need > something like "pg_ctl standalone" which I mentioned in another thread. Thought? I think so. Looking at assign_synchronous_standby_names, the following code just looks wrong: if (doit && list_length(elemlist) > 0) sync_standbys_defined = true; Once sync_standbys_defined becomes true, there's no way for it to ever become false again. That can't be right. That means that if you disable sync rep by zeroing out synchronous_standby_names, backends that already existed at the time you made the change will continue to act as though sync rep is enabled until they exit. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-hackers по дате отправления: