From f53ea603516e6e9c3370c4b4df4b3bc0673558ee Mon Sep 17 00:00:00 2001 From: luozihao <1165977584@qq.com> Date: Wed, 17 Nov 2021 15:34:52 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=97=A5=E5=BF=97=E6=89=93?= =?UTF-8?q?=E5=8D=B0=E9=A2=91=E7=8E=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/gausskernel/process/postmaster/pgarch.cpp | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/gausskernel/process/postmaster/pgarch.cpp b/src/gausskernel/process/postmaster/pgarch.cpp index e0360ce3..877db984 100644 --- a/src/gausskernel/process/postmaster/pgarch.cpp +++ b/src/gausskernel/process/postmaster/pgarch.cpp @@ -328,16 +328,15 @@ static void VerifyDestDirIsEmptyOrCreate(char* dirname) * As a result, the archiver is trapped in a loop of opening and exiting abnormally. */ static inline void getSyncRecPtrErrorHandler (bool* amSync) { - if (t_thrd.syncrep_cxt.SyncRepConfig == NULL) { - /* wait a bit before retrying */ - pg_usleep(1000000L); - return; + /* wait a bit before retrying */ + pg_usleep(1000000L); + if (t_thrd.syncrep_cxt.SyncRepConfig != NULL) { + List* syncStandbyList = SyncRepGetSyncStandbys(amSync); + int syncStandbyNums = list_length(syncStandbyList); + list_free(syncStandbyList); + int elevel = syncStandbyNums == 0 ? WARNING : ERROR; + ereport(elevel, (errmsg("pgarch_ArchiverObsCopyLoop failed when call SyncRepGetSyncRecPtr"))); } - List* syncStandbyList = SyncRepGetSyncStandbys(amSync); - int syncStandbyNums = list_length(syncStandbyList); - list_free(syncStandbyList); - int elevel = syncStandbyNums == 0 ? WARNING : ERROR; - ereport(elevel, (errmsg("pgarch_ArchiverObsCopyLoop failed when call SyncRepGetSyncRecPtr"))); } /*