RemovePromoteSignalFiles函数强制删除signaling standby promotion请求的文件。如果不删除,这些文件的存在会过早触发promotion。删除这些文件通常是没有必要的,因为它们仅仅在standby promotion过程中存在。然而会存在竞态情况:
如果pg_ctl promote被执行并在提升过程中创建了这些文件,这些文件会存在,即使数据库已经是新的master了。然后,新的standby使用该master产生的备份启动,这些文件会在数据库启动过程中存在,因此必须在这里删除以避免产生没有必要的promotion。

void RemovePromoteSignalFiles(void){
unlink(PROMOTE_SIGNAL_FILE);
unlink(FALLBACK_PROMOTE_SIGNAL_FILE);
}

同样,对于日志回卷的信号文件也需要操作

void RemoveLogrotateSignalFiles(void) {
unlink(LOGROTATE_SIGNAL_FILE);
}