summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorantirez <antirez@gmail.com>2016-05-04 15:45:38 +0200
committerantirez <antirez@gmail.com>2016-05-04 15:45:45 +0200
commit995b9ffe07ee497d0a8c7590e393a2ad2d8365da (patch)
treed5b6cc7aaa2e721046d4585e59ef297e59c292d5 /src
parent5500c510837aa2106ef53636ff62b5893a71237e (diff)
downloadredis-995b9ffe07ee497d0a8c7590e393a2ad2d8365da.tar.gz
Allow CONFIG GET during loading.
Thanks to @oranagra for the idea of allowing CONFIG GET during loading.
Diffstat (limited to 'src')
-rw-r--r--src/config.c6
-rw-r--r--src/server.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/src/config.c b/src/config.c
index 22dce098f..ba835455c 100644
--- a/src/config.c
+++ b/src/config.c
@@ -1923,6 +1923,12 @@ int rewriteConfig(char *path) {
*----------------------------------------------------------------------------*/
void configCommand(client *c) {
+ /* Only allow CONFIG GET while loading. */
+ if (server.loading && strcasecmp(c->argv[1]->ptr,"get")) {
+ addReplyError(c,"Only CONFIG GET is allowed during loading");
+ return;
+ }
+
if (!strcasecmp(c->argv[1]->ptr,"set")) {
if (c->argc != 4) goto badarity;
configSetCommand(c);
diff --git a/src/server.c b/src/server.c
index 64f174c03..779c18ba5 100644
--- a/src/server.c
+++ b/src/server.c
@@ -254,7 +254,7 @@ struct redisCommand redisCommandTable[] = {
{"slaveof",slaveofCommand,3,"ast",0,NULL,0,0,0,0,0},
{"role",roleCommand,1,"lst",0,NULL,0,0,0,0,0},
{"debug",debugCommand,-1,"as",0,NULL,0,0,0,0,0},
- {"config",configCommand,-2,"at",0,NULL,0,0,0,0,0},
+ {"config",configCommand,-2,"lat",0,NULL,0,0,0,0,0},
{"subscribe",subscribeCommand,-2,"pslt",0,NULL,0,0,0,0,0},
{"unsubscribe",unsubscribeCommand,-1,"pslt",0,NULL,0,0,0,0,0},
{"psubscribe",psubscribeCommand,-2,"pslt",0,NULL,0,0,0,0,0},