diff --git a/src/config.c b/src/config.c index b4541559c..90baed9ee 100644 --- a/src/config.c +++ b/src/config.c @@ -611,6 +611,12 @@ void loadServerConfigFromString(char *config) { goto loaderr; } + /* in case cluster mode is enabled dbnum must be 1 */ + if (server.cluster_enabled && server.dbnum > 1) { + serverLog(LL_WARNING, "WARNING: Changing databases number from %d to 1 since we are in cluster mode", server.dbnum); + server.dbnum = 1; + } + /* To ensure backward compatibility and work while hz is out of range */ if (server.config_hz < CONFIG_MIN_HZ) server.config_hz = CONFIG_MIN_HZ; if (server.config_hz > CONFIG_MAX_HZ) server.config_hz = CONFIG_MAX_HZ; diff --git a/src/server.c b/src/server.c index eaad37c07..f01e7382d 100644 --- a/src/server.c +++ b/src/server.c @@ -7202,12 +7202,7 @@ int main(int argc, char **argv) { aofOpenIfNeededOnServerStart(); aofDelHistoryFiles(); if (server.cluster_enabled) { - if (verifyClusterConfigWithData() == C_ERR) { - serverLog(LL_WARNING, - "You can't have keys in a DB different than DB 0 when in " - "Cluster mode. Exiting."); - exit(1); - } + serverAssert(verifyClusterConfigWithData() == C_OK); } for (j = 0; j < CONN_TYPE_MAX; j++) {