Обсуждение: pgsql: Fix pg_rewind bugs when rewinding a standby server.

Поиск
Список
Период
Сортировка

pgsql: Fix pg_rewind bugs when rewinding a standby server.

От
Heikki Linnakangas
Дата:
Fix pg_rewind bugs when rewinding a standby server.

If the target is a standby server, its WAL doesn't end at the last
checkpoint record, but at minRecoveryPoint. We must scan all the
WAL from the last common checkpoint all the way up to minRecoveryPoint
for modified pages, and also consider that portion when determining
whether the server needs rewinding.

Backpatch to all supported versions.

Author: Ian Barwick and me
Discussion: https://www.postgresql.org/message-id/CABvVfJU-LDWvoz4-Yow3Ay5LZYTuPD7eSjjE4kGyNZpXC6FrVQ%40mail.gmail.com

Branch
------
REL9_5_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/81e3c868f891bf291a3ad38d81b04096146c2f6f

Modified Files
--------------
src/bin/pg_rewind/parsexlog.c                 |  11 +-
src/bin/pg_rewind/pg_rewind.c                 |  60 ++++++----
src/bin/pg_rewind/t/008_min_recovery_point.pl | 165 ++++++++++++++++++++++++++
3 files changed, 211 insertions(+), 25 deletions(-)