]> granicus.if.org Git - postgresql/commit
Only allow one recovery target setting
authorPeter Eisentraut <peter_e@gmx.net>
Wed, 28 Nov 2018 11:36:49 +0000 (12:36 +0100)
committerPeter Eisentraut <peter_e@gmx.net>
Wed, 28 Nov 2018 12:55:54 +0000 (13:55 +0100)
commitf2cbffc7a6183a359b339cfed65e9d609de756f0
treed15bf1bbe2a53623d2477aa6a60a2e7b3285a984
parenteae9143d9a70116a8ac4b3195454942140e5afb5
Only allow one recovery target setting

The previous recovery.conf regime accepted multiple recovery_target*
settings and used the last one.  This does not translate well to the
general GUC system.  Specifically, under EXEC_BACKEND, the settings
are written out not in any particular order, so the order in which
they were originally set is not available to new processes.

Rather than redesign the GUC system, it was decided to abandon the old
behavior and only allow one recovery target setting.  A second setting
will cause an error.  However, it is allowed to set the same parameter
multiple times or unset a parameter and set a different one.

Discussion: https://www.postgresql.org/message-id/flat/27802171543235530%40iva2-6ec8f0a6115e.qloud-c.yandex.net#701a59c837ad0bf8c244344aaf3ef5a4
doc/src/sgml/config.sgml
src/backend/utils/misc/guc.c
src/test/recovery/t/003_recovery_targets.pl