fix_vac_truncate_clog_xid_consume_2.patch
application/octet-stream
Filename: fix_vac_truncate_clog_xid_consume_2.patch
Type: application/octet-stream
Part: 0
Patch
Format: unified
| File | + | − |
|---|---|---|
| src/backend/commands/vacuum.c | 0 | 0 |
diff --git a/src/backend/commands/vacuum.c b/src/backend/commands/vacuum.c
new file mode 100644
index 93361a0..9cda925
*** a/src/backend/commands/vacuum.c
--- b/src/backend/commands/vacuum.c
*************** vac_truncate_clog(TransactionId frozenXI
*** 1051,1057 ****
TransactionId lastSaneFrozenXid,
MultiXactId lastSaneMinMulti)
{
! TransactionId myXID = GetCurrentTransactionId();
Relation relation;
HeapScanDesc scan;
HeapTuple tuple;
--- 1051,1057 ----
TransactionId lastSaneFrozenXid,
MultiXactId lastSaneMinMulti)
{
! TransactionId nextXID = ReadNewTransactionId();
Relation relation;
HeapScanDesc scan;
HeapTuple tuple;
*************** vac_truncate_clog(TransactionId frozenXI
*** 1100,1106 ****
MultiXactIdPrecedes(lastSaneMinMulti, dbform->datminmxid))
bogus = true;
! if (TransactionIdPrecedes(myXID, dbform->datfrozenxid))
frozenAlreadyWrapped = true;
else if (TransactionIdPrecedes(dbform->datfrozenxid, frozenXID))
{
--- 1100,1106 ----
MultiXactIdPrecedes(lastSaneMinMulti, dbform->datminmxid))
bogus = true;
! if (TransactionIdPrecedes(nextXID, dbform->datfrozenxid))
frozenAlreadyWrapped = true;
else if (TransactionIdPrecedes(dbform->datfrozenxid, frozenXID))
{