diff --git a/src/gausskernel/ddes/adapter/ss_dms_recovery.cpp b/src/gausskernel/ddes/adapter/ss_dms_recovery.cpp index 27346892f..68eebafb8 100644 --- a/src/gausskernel/ddes/adapter/ss_dms_recovery.cpp +++ b/src/gausskernel/ddes/adapter/ss_dms_recovery.cpp @@ -305,7 +305,13 @@ void OndemandRealtimeBuildHandleFailover() Assert(SS_ONDEMAND_REALTIME_BUILD_NORMAL); SSReadControlFile(SSGetPrimaryInstId()); - ss_failover_dw_init(); + if (u_sess->storage_cxt.pendingOps == NULL) { + InitSync(); + ss_failover_dw_init(); + EnableSyncRequestForwarding(); + } else { + ss_failover_dw_init(); + } StartupOndemandRecovery(); StartupReplicationSlots(); restoreTwoPhaseData();