Fix "missing continuation record" after standby promotion
authorAlvaro Herrera <alvherre@alvh.no-ip.org>
Wed, 23 Mar 2022 17:22:10 +0000 (18:22 +0100)
committerAlvaro Herrera <alvherre@alvh.no-ip.org>
Wed, 23 Mar 2022 17:22:10 +0000 (18:22 +0100)
commit9d92582abf918215d27659d45a4c9e78bda50aff
tree9fcd8d2cf4bc5a67a82cb870a57a7fd0ead5382e
parentdfdb2f3bf5c6ff4014de142a7b82b205224e01d3
Fix "missing continuation record" after standby promotion

Invalidate abortedRecPtr and missingContrecPtr after a missing
continuation record is successfully skipped on a standby. This fixes a
PANIC caused when a recently promoted standby attempts to write an
OVERWRITE_RECORD with an LSN of the previously read aborted record.

Backpatch to 10 (all stable versions).

Author: Sami Imseih <simseih@amazon.com>
Reviewed-by: Kyotaro Horiguchi <horikyota.ntt@gmail.com>
Reviewed-by: Álvaro Herrera <alvherre@alvh.no-ip.org>
Discussion: https://postgr.es/m/44D259DE-7542-49C4-8A52-2AB01534DCA9@amazon.com
src/backend/access/transam/xlogrecovery.c
src/test/recovery/t/026_overwrite_contrecord.pl