From 76402db58ac2adee1ede7c22aadb843fd84a7564 Mon Sep 17 00:00:00 2001 From: Konstantin Knizhnik Date: Fri, 24 May 2024 18:29:02 +0300 Subject: [PATCH] Change filter implementstion for replica redo to always apply wal records with full page images --- pgxn/neon/pagestore_smgr.c | 3 +++ vendor/postgres-v14 | 2 +- vendor/postgres-v15 | 2 +- vendor/postgres-v16 | 2 +- vendor/revisions.json | 6 +++--- 5 files changed, 9 insertions(+), 6 deletions(-) diff --git a/pgxn/neon/pagestore_smgr.c b/pgxn/neon/pagestore_smgr.c index ac505fe6fb..bd7a470ace 100644 --- a/pgxn/neon/pagestore_smgr.c +++ b/pgxn/neon/pagestore_smgr.c @@ -3393,6 +3393,9 @@ neon_redo_read_buffer_filter(XLogReaderState *record, uint8 block_id) if (old_redo_read_buffer_filter && old_redo_read_buffer_filter(record, block_id)) return true; + if (XLogRecBlockImageApply(record, block_id)) + return false; + #if PG_VERSION_NUM < 150000 if (!XLogRecGetBlockTag(record, block_id, &rinfo, &forknum, &blkno)) neon_log(PANIC, "failed to locate backup block with ID %d", block_id); diff --git a/vendor/postgres-v14 b/vendor/postgres-v14 index db3ad89797..0d30e28f74 160000 --- a/vendor/postgres-v14 +++ b/vendor/postgres-v14 @@ -1 +1 @@ -Subproject commit db3ad897973c5e97ffa92d61c3dc0d503db887b3 +Subproject commit 0d30e28f74f49fe6a27a6bd45dcfeb1060656b8f diff --git a/vendor/postgres-v15 b/vendor/postgres-v15 index 7d1d55fc7f..74fb144890 160000 --- a/vendor/postgres-v15 +++ b/vendor/postgres-v15 @@ -1 +1 @@ -Subproject commit 7d1d55fc7f1849116c8d8382eb272b06aeeb5352 +Subproject commit 74fb144890c4f955db1ef50ee1eeb9d8a6c2f69d diff --git a/vendor/postgres-v16 b/vendor/postgres-v16 index 2d399cd7ee..3c2b9d576c 160000 --- a/vendor/postgres-v16 +++ b/vendor/postgres-v16 @@ -1 +1 @@ -Subproject commit 2d399cd7eeb36445cad69358f5b0e34899e3f705 +Subproject commit 3c2b9d576c580e0b5b7108001f959b8c5b42e0a2 diff --git a/vendor/revisions.json b/vendor/revisions.json index da0b782535..2f16f334c5 100644 --- a/vendor/revisions.json +++ b/vendor/revisions.json @@ -1,5 +1,5 @@ { - "v16": ["16.3", "2d399cd7eeb36445cad69358f5b0e34899e3f705"], - "v15": ["15.7", "7d1d55fc7f1849116c8d8382eb272b06aeeb5352"], - "v14": ["14.12", "db3ad897973c5e97ffa92d61c3dc0d503db887b3"] + "v16": ["16.3", "3c2b9d576c580e0b5b7108001f959b8c5b42e0a2"], + "v15": ["15.7", "74fb144890c4f955db1ef50ee1eeb9d8a6c2f69d"], + "v14": ["14.12", "0d30e28f74f49fe6a27a6bd45dcfeb1060656b8f"] }