mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-12-21 08:29:39 +08:00
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
This commit is contained in:
parent
df9384492b
commit
438fc4a39c
@ -1074,7 +1074,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);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user