diff --git a/src/cluster.c b/src/cluster.c index ddea84be..d9d90419 100644 --- a/src/cluster.c +++ b/src/cluster.c @@ -3791,7 +3791,7 @@ void restoreCommand(redisClient *c) { /* Make sure this key does not already exist here... */ if (!replace && lookupKeyWrite(c->db,c->argv[1]) != NULL) { - addReplyError(c,"Target key name is busy."); + addReply(c,shared.busykeyerr); return; } diff --git a/src/redis.c b/src/redis.c index 38737ea0..5afb24dd 100644 --- a/src/redis.c +++ b/src/redis.c @@ -1316,6 +1316,8 @@ void createSharedObjects(void) { "-EXECABORT Transaction discarded because of previous errors.\r\n")); shared.noreplicaserr = createObject(REDIS_STRING,sdsnew( "-NOREPLICAS Not enough good slaves to write.\r\n")); + shared.busykeyerr = createObject(REDIS_STRING,sdsnew( + "-BUSYKEY Target key name already exists.\r\n")); shared.space = createObject(REDIS_STRING,sdsnew(" ")); shared.colon = createObject(REDIS_STRING,sdsnew(":")); shared.plus = createObject(REDIS_STRING,sdsnew("+")); diff --git a/src/redis.h b/src/redis.h index b234185b..9c5507bb 100644 --- a/src/redis.h +++ b/src/redis.h @@ -548,7 +548,7 @@ struct sharedObjectsStruct { *emptymultibulk, *wrongtypeerr, *nokeyerr, *syntaxerr, *sameobjecterr, *outofrangeerr, *noscripterr, *loadingerr, *slowscripterr, *bgsaveerr, *masterdownerr, *roslaveerr, *execaborterr, *noautherr, *noreplicaserr, - *oomerr, *plus, *messagebulk, *pmessagebulk, *subscribebulk, + *busykeyerr, *oomerr, *plus, *messagebulk, *pmessagebulk, *subscribebulk, *unsubscribebulk, *psubscribebulk, *punsubscribebulk, *del, *rpop, *lpop, *lpush, *emptyscan, *minstring, *maxstring, *select[REDIS_SHARED_SELECT_CMDS],