Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitb7e51d9

Browse files
committed
Don't allow relminmxid to go backwards during VACUUM FULL
We were allowing a table's pg_class.relminmxid value to move backwardswhen heaps were swapped by VACUUM FULL or CLUSTER. There is asimilar protection against relfrozenxid going backwards, which weneglected to clone when the multixact stuff was rejiggered by commit0ac5ad5.Backpatch to 9.3, where relminmxid was introduced.As reported by Heikki inhttp://www.postgresql.org/message-id/52401AEA.9000608@vmware.com
1 parentb277057 commitb7e51d9

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

‎src/backend/commands/cluster.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -861,6 +861,12 @@ copy_heap_data(Oid OIDNewHeap, Oid OIDOldHeap, Oid OIDOldIndex, bool verbose,
861861
if (TransactionIdPrecedes(FreezeXid,OldHeap->rd_rel->relfrozenxid))
862862
FreezeXid=OldHeap->rd_rel->relfrozenxid;
863863

864+
/*
865+
* MultiXactCutoff, similarly, shouldn't go backwards either.
866+
*/
867+
if (MultiXactIdPrecedes(MultiXactCutoff,OldHeap->rd_rel->relminmxid))
868+
MultiXactCutoff=OldHeap->rd_rel->relminmxid;
869+
864870
/* return selected values to caller */
865871
*pFreezeXid=FreezeXid;
866872
*pCutoffMulti=MultiXactCutoff;

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp