!3442 【资源池化】recovery阶段增加异常处理分支

Merge pull request !3442 from 董宁/dn_fix17_up
This commit is contained in:
opengauss-bot
2023-05-11 11:47:17 +00:00
committed by Gitee
11 changed files with 80 additions and 5 deletions

View File

@ -83,4 +83,5 @@ void SSMarkBufferDirtyForERTO(RedoBufferInfo* bufferinfo);
long SSGetBufSleepTime(int retry_times);
SMGR_READ_STATUS SmgrNetPageCheckRead(Oid spcNode, Oid dbNode, Oid relNode, ForkNumber forkNum,
BlockNumber blockNo, char *blockbuf);
void SSUnPinBuffer(BufferDesc* buf_desc);
#endif

View File

@ -58,6 +58,8 @@ typedef struct ss_recovery_info {
bool in_failover; // used to detemin failover scenario, especially for the non-promoting node
bool in_flushcopy;
bool no_backend_left;
bool startup_need_exit_normally; //used in alive failover
bool recovery_trapped_in_page_request; //used in alive failover
} ss_recovery_info_t;
extern bool SSRecoveryNodes();

View File

@ -55,6 +55,7 @@ typedef enum {
PMSIGNAL_DMS_SWITCHOVER_PROMOTE, /* dms standby switchover promote */
PMSIGNAL_DMS_REFORM, /* dms reform start during PM_RUN */
PMSIGNAL_DMS_REFORM_DONE, /* dms reform done */
PMSIGNAL_DMS_TERM_STARTUP, /* term startup thread*/
NUM_PMSIGNALS /* Must be last value of enum! */
} PMSignalReason;