From df00b6ac0577f89b209a740d9fa96f35d54f5692 Mon Sep 17 00:00:00 2001 From: antirez Date: Mon, 13 Jan 2014 11:55:57 +0100 Subject: [PATCH] SENTINEL SET: error on bad option name + flush config on error. --- src/sentinel.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/sentinel.c b/src/sentinel.c index 3658c616..aa5c0a6a 100644 --- a/src/sentinel.c +++ b/src/sentinel.c @@ -2646,6 +2646,7 @@ void sentinelSetCommand(redisClient *c) { if (strlen(value) && access(value,X_OK) == -1) { addReplyError(c, "Notification script seems non existing or non executable"); + if (changes) sentinelFlushConfig(); return; } sdsfree(ri->notification_script); @@ -2657,6 +2658,7 @@ void sentinelSetCommand(redisClient *c) { addReplyError(c, "Client reconfiguration script seems non existing or " "non executable"); + if (changes) sentinelFlushConfig(); return; } sdsfree(ri->client_reconfig_script); @@ -2667,6 +2669,11 @@ void sentinelSetCommand(redisClient *c) { sdsfree(ri->auth_pass); ri->auth_pass = strlen(value) ? sdsnew(value) : NULL; changes++; + } else { + addReplyErrorFormat(c,"Unknown option '%s' for SENTINEL SET", + option); + if (changes) sentinelFlushConfig(); + return; } }