Re: pgsql: Integrate recovery.conf into postgresql.conf
От | Peter Eisentraut |
---|---|
Тема | Re: pgsql: Integrate recovery.conf into postgresql.conf |
Дата | |
Msg-id | cd804d8f-0873-f81c-2420-2f1b0f99d889@2ndquadrant.com обсуждение исходный текст |
Ответ на | Re: pgsql: Integrate recovery.conf into postgresql.conf (Sergei Kornilov <sk@zsrv.org>) |
Ответы |
Re: pgsql: Integrate recovery.conf into postgresql.conf
Re: pgsql: Integrate recovery.conf into postgresql.conf |
Список | pgsql-hackers |
On 26/11/2018 13:32, Sergei Kornilov wrote: >> Timed out while waiting for standby to catch up at >> t/003_recovery_targets.pl line 34. > > I can reproduce this and notice wrong assign settings order. For example standby_6 has >> recovery_target_name = '$recovery_name' >> recovery_target_xid = '$recovery_txid' >> recovery_target_time = '$recovery_time' > But recoveryTarget was set to RECOVERY_TARGET_XID > Without -DEXEC_BACKEND all fine. > > As far as I understand the guc.c code with EXEC_BACKEND all processes uses different config processing logic. We serializeall GUC and restore at process start. And we sort GUC by name in build_guc_variables - so we restore settings inwrong order. I was afraid that the GUC system does not guarantee the order of settings... > > What is preferable solution? Seems we can not simple change this logic. What is the reason for allowing multiple recovery_target_* settings and taking the last one? Could we change this aspect to make this behave better? > I think i can reorganize all new recovery_target_* GUC into single one with format, for example, recovery_target = "xid:607"(was mentioned in patch discussion). That would be another option. -- Peter Eisentraut http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
В списке pgsql-hackers по дате отправления: