From fdcb6a40896e37422a7dcf6b3cc1f1861fe46e3a Mon Sep 17 00:00:00 2001 From: congzhou2603 Date: Tue, 13 Aug 2024 16:20:52 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90bugfix=E3=80=91=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E5=AE=9E=E6=97=B6=E6=9E=84=E5=BB=BA=E5=9C=A8ss=5Fondemand=5Fre?= =?UTF-8?q?covery=5Fmem=5Fsize=E8=BE=83=E5=B0=8F=E7=9A=84=E6=83=85?= =?UTF-8?q?=E5=86=B5=E4=B8=8B=EF=BC=8CStartup=E7=BA=BF=E7=A8=8B=E5=8D=A1?= =?UTF-8?q?=E5=9C=A8DispatchXactRecord=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../storage/access/transam/ondemand_extreme_rto/page_redo.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gausskernel/storage/access/transam/ondemand_extreme_rto/page_redo.cpp b/src/gausskernel/storage/access/transam/ondemand_extreme_rto/page_redo.cpp index 2086e5de2..17d0457fd 100644 --- a/src/gausskernel/storage/access/transam/ondemand_extreme_rto/page_redo.cpp +++ b/src/gausskernel/storage/access/transam/ondemand_extreme_rto/page_redo.cpp @@ -1784,6 +1784,10 @@ bool TrxnManagerDistributeItemsBeforeEnd(RedoItem *item) TrxnManagerProcHashMapPrune(); } else { if (XLByteLT(item->record.EndRecPtr, g_redoWorker->nextPrunePtr)) { + if (XactHasSegpageRelFiles(&item->record)) { + uint32 expected = 1; + pg_atomic_compare_exchange_u32((volatile uint32 *)&(g_dispatcher->segpageXactDoneFlag), &expected, 0); + } DereferenceRedoItem(item); return exitFlag; }