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; } }