!2838 解决在synchronous_standby_names='*'时gs_probackup备份失败的问题

Merge pull request !2838 from Movead/prgbackup_feedback_lsn
This commit is contained in:
opengauss-bot
2023-02-21 15:35:00 +00:00
committed by Gitee

View File

@ -494,12 +494,12 @@ static int DoWALWrite(const char* wal_buf, int len, XLogRecPtr& block_pos, const
suspendHeartBeatTimer();
return DO_WAL_DATA_WRITE_ERROR;
}
/* Write was successful, advance our position */
bytes_written += bytes_to_write;
bytes_left -= bytes_to_write;
XLByteAdvance(block_pos, bytes_to_write);
xlogoff += bytes_to_write;
lastFlushPosition = block_pos;
/* Did we reach the end of a WAL segment? */
if (block_pos % XLogSegSize == 0) {
@ -586,14 +586,12 @@ bool ReceiveXlogStream(PGconn* conn, XLogRecPtr startpos, uint32 timeline, const
* so that the master can remove WAL.
*/
reportFlushPosition = true;
ss_c = snprintf_s(slotcmd, MAXPGPATH, MAXPGPATH - 1, "SLOT \"%s\" ", replication_slot);
securec_check_ss_c(ss_c, "", "");
} else {
reportFlushPosition = false;
slotcmd[0] = 0;
}
reportFlushPosition = true;
if (sysidentifier != NULL) {
/* Validate system identifier and timeline hasn't changed */
res = PQexec(conn, "IDENTIFY_SYSTEM");