diff options
author | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2020-08-17 10:52:58 +0300 |
---|---|---|
committer | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2020-08-17 10:52:58 +0300 |
commit | a28d731a1187e8d9d8c2b6319375fcbf0a8debd5 (patch) | |
tree | 9f815005ff18e72c439c5f902901430e36d2d5d7 /doc/src | |
parent | 3941eb6341d8274dd63a26972042da6632533f2b (diff) | |
download | postgresql-a28d731a1187e8d9d8c2b6319375fcbf0a8debd5.tar.gz postgresql-a28d731a1187e8d9d8c2b6319375fcbf0a8debd5.zip |
Mark commit and abort WAL records with XLR_SPECIAL_REL_UPDATE.
If a commit or abort record includes "dropped relfilenodes", then replaying
the record will remove data files. That is surely a "special rel update",
but the records were not marked as such. Fix that, teach pg_rewind to
expect and ignore them, and add a test case to cover it.
It's always been like this, but no backporting for fear of breaking
existing applications. If an application parsed the WAL but was not
handling commit/abort records, it would stop working. That might be a good
thing if it really needed to handle the dropped rels, but it will be caught
when the application is updated to work with PostgreSQL v14 anyway.
Discussion: https://www.postgresql.org/message-id/07b33e2c-46a6-86a1-5f9e-a7da73fddb95%40iki.fi
Reviewed-by: Amit Kapila, Michael Paquier
Diffstat (limited to 'doc/src')
0 files changed, 0 insertions, 0 deletions