summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFujii Masao <fujii@postgresql.org>2021-03-25 11:23:30 +0900
committerFujii Masao <fujii@postgresql.org>2021-03-25 11:25:34 +0900
commitc29bab799c82c3640ec93cf14d0b4f174ae33fe0 (patch)
tree9f9750731a1c192f028d5a1a56c5940fbbc972be /src
parent4f670c64efd972e8869117d8324a1379070c9793 (diff)
Fix bug in WAL replay of COMMIT_TS_SETTS record.
Previously the WAL replay of COMMIT_TS_SETTS record called TransactionTreeSetCommitTsData() with the argument write_xlog=true, which generated and wrote new COMMIT_TS_SETTS record. This should not be acceptable because it's during recovery. This commit fixes the WAL replay of COMMIT_TS_SETTS record so that it calls TransactionTreeSetCommitTsData() with write_xlog=false and doesn't generate new WAL during recovery. Back-patch to all supported branches. Reported-by: lx zou <zoulx1982@163.com> Author: Fujii Masao Reviewed-by: Alvaro Herrera Discussion: https://postgr.es/m/16931-620d0f2fdc6108f1@postgresql.org
Diffstat (limited to 'src')
-rw-r--r--src/backend/access/transam/commit_ts.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/backend/access/transam/commit_ts.c b/src/backend/access/transam/commit_ts.c
index 8eea32c6efc..8bc67ffb16c 100644
--- a/src/backend/access/transam/commit_ts.c
+++ b/src/backend/access/transam/commit_ts.c
@@ -1012,7 +1012,7 @@ commit_ts_redo(XLogReaderState *record)
subxids = NULL;
TransactionTreeSetCommitTsData(setts->mainxid, nsubxids, subxids,
- setts->timestamp, setts->nodeid, true);
+ setts->timestamp, setts->nodeid, false);
if (subxids)
pfree(subxids);
}