Allow fast sync even if a background save is in progress

Former-commit-id: b98aadfb6875f366a63a9d27d47fb5ca60abaa03
This commit is contained in:
John Sully 2021-11-12 00:18:32 +00:00
parent 595a2315f6
commit b666962ed8

View File

@ -1385,8 +1385,11 @@ void syncCommand(client *c) {
g_pserver->replid, g_pserver->replid2); g_pserver->replid, g_pserver->replid2);
} }
/* CASE 0: Fast Sync */
if ((c->slave_capa & SLAVE_CAPA_ROCKSDB_SNAPSHOT) && g_pserver->m_pstorageFactory) {
startBgsaveForReplication(c->slave_capa);
/* CASE 1: BGSAVE is in progress, with disk target. */ /* CASE 1: BGSAVE is in progress, with disk target. */
if (g_pserver->FRdbSaveInProgress() && } else if (g_pserver->FRdbSaveInProgress() &&
g_pserver->rdb_child_type == RDB_CHILD_TYPE_DISK) g_pserver->rdb_child_type == RDB_CHILD_TYPE_DISK)
{ {
/* Ok a background save is in progress. Let's check if it is a good /* Ok a background save is in progress. Let's check if it is a good