Thread: pgsql: Attach FPI to the first record after full_page_writes isturned

pgsql: Attach FPI to the first record after full_page_writes isturned

From
Amit Kapila
Date:
Attach FPI to the first record after full_page_writes is turned on.

XLogInsert fails to attach a required FPI to the first record after
full_page_writes is turned on by the last checkpoint.  This bug got
introduced in 9.5 due to code rearrangement in commits 2c03216d83 and
2076db2aea.  Fix it by ensuring that XLogInsertRecord performs a
recomputation when the given record is generated with FPW as off but
found that the flag has been turned on while actually inserting the
record.

Reported-by: Kyotaro Horiguchi
Author: Kyotaro Horiguchi
Reviewed-by: Amit Kapila
Backpatch-through: 9.5 where this problem was introduced
Discussion: https://postgr.es/m/20180420.151043.74298611.horiguchi.kyotaro@lab.ntt.co.jp

Branch
------
REL9_5_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/47a589c1fe35176b38ffcdb2a95b4fa2ef45add2

Modified Files
--------------
src/backend/access/transam/xlog.c | 19 +++++++++++++------
1 file changed, 13 insertions(+), 6 deletions(-)