Invert two sides of if expression in SET to avoid a lookup.
Because of the short circuit behavior of && inverting the two sides of the if expression avoids an hash table lookup if the non-EX variant of SET is called. Thanks to Weibin Yao (@yaoweibin on github) for spotting this.
This commit is contained in:
parent
52d954912e
commit
10f6b3ec22
@ -26,7 +26,7 @@ void setGenericCommand(redisClient *c, int nx, robj *key, robj *val, robj *expir
|
|||||||
if (unit == UNIT_SECONDS) milliseconds *= 1000;
|
if (unit == UNIT_SECONDS) milliseconds *= 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (lookupKeyWrite(c->db,key) != NULL && nx) {
|
if (nx && lookupKeyWrite(c->db,key) != NULL) {
|
||||||
addReply(c,shared.czero);
|
addReply(c,shared.czero);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user