pgsql: Prevent WAL files created by pg_basebackup -x/X from being archi

Поиск
Список
Период
Сортировка
От Andres Freund
Тема pgsql: Prevent WAL files created by pg_basebackup -x/X from being archi
Дата
Msg-id E1Y7VVH-0007Rw-Tv@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Prevent WAL files created by pg_basebackup -x/X from being archived again.

WAL (and timeline history) files created by pg_basebackup did not
maintain the new base backup's archive status. That's currently not a
problem if the new node is used as a standby - but if that node is
promoted all still existing files can get archived again.  With a high
wal_keep_segment settings that can happen a significant time later -
which is quite confusing.

Change both the backend (for the -x/-X fetch case) and pg_basebackup
(for -X stream) itself to always mark WAL/timeline files included in
the base backup as .done. That's in line with walreceiver.c doing so.

The verbosity of the pg_basebackup changes show pretty clearly that it
needs some refactoring, but that'd result in not be backpatchable
changes.

Backpatch to 9.1 where pg_basebackup was introduced.

Discussion: 20141205002854.GE21964@awork2.anarazel.de

Branch
------
REL9_4_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/90e4a2bf9b131f45fd4d80815b2b3505bb98c0a6

Modified Files
--------------
src/backend/replication/basebackup.c   |   24 +++++++++++
src/bin/pg_basebackup/pg_basebackup.c  |   33 +++++++++-----
src/bin/pg_basebackup/pg_receivexlog.c |    3 +-
src/bin/pg_basebackup/receivelog.c     |   74 +++++++++++++++++++++++++++-----
src/bin/pg_basebackup/receivelog.h     |    3 +-
5 files changed, 115 insertions(+), 22 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Andres Freund
Дата:
Сообщение: pgsql: Prevent WAL files created by pg_basebackup -x/X from being archi
Следующее
От: Andres Freund
Дата:
Сообщение: pgsql: Prevent WAL files created by pg_basebackup -x/X from being archi