diff --git a/src/backend/access/transam/subtrans.c b/src/backend/access/transam/subtrans.c new file mode 100644 index 8170ba3..a9bfcb5 *** a/src/backend/access/transam/subtrans.c --- b/src/backend/access/transam/subtrans.c *************** StartupSUBTRANS(TransactionId oldestActi *** 238,243 **** --- 238,244 ---- { int startPage; int endPage; + int wrapPage = TransactionIdToPage(0xFFFFFFFF); /* * Since we don't expect pg_subtrans to be valid across crashes, we *************** StartupSUBTRANS(TransactionId oldestActi *** 254,259 **** --- 255,262 ---- { (void) ZeroSUBTRANSPage(startPage); startPage++; + if (startPage > wrapPage) + startPage=0; } (void) ZeroSUBTRANSPage(startPage);