From 7fbf409ca30cb8d9ffb46c8fefa7d095e7f3e8d3 Mon Sep 17 00:00:00 2001 From: james Date: Mon, 23 Sep 2024 16:42:49 +0800 Subject: [PATCH] add fix --- src/gausskernel/storage/replication/walreceiver.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/gausskernel/storage/replication/walreceiver.cpp b/src/gausskernel/storage/replication/walreceiver.cpp index 82ce0a062..c2fa9050d 100755 --- a/src/gausskernel/storage/replication/walreceiver.cpp +++ b/src/gausskernel/storage/replication/walreceiver.cpp @@ -2700,6 +2700,7 @@ Datum gs_get_recv_locations(PG_FUNCTION_ARGS) XLogRecPtr rcvRedo; XLogRecPtr rcvWrite; + XLogRecPtr lastRplReadLsn; XLogRecPtr rcvFlush; XLogRecPtr rcvReceived; XLogRecPtr localMaxLSN; @@ -2764,7 +2765,10 @@ Datum gs_get_recv_locations(PG_FUNCTION_ARGS) securec_check(rc, "\0", "\0"); } else { - rcvRedo = GetXLogReplayRecPtr(NULL, NULL); + rcvRedo = GetXLogReplayRecPtr(NULL, &lastRplReadLsn); + if (XLByteEQ(lastRplReadLsn, rcvReceived)) { + rcvRedo = rcvReceived; + } /* receiver_received_location */ if (rcvReceived == 0) { localMaxLSN = FindMaxLSN(t_thrd.proc_cxt.DataDir, maxLsnMsg, XLOG_READER_MAX_MSGLENTH, &localMaxLsnCrc,