mirror of
https://github.com/fluencelabs/redis
synced 2025-03-19 09:00:51 +00:00
Merge pull request #3174 from djanowski/fix-zincrby-return-value
Fix ZINCRBY return value.
This commit is contained in:
commit
4cbe044439
@ -1308,6 +1308,7 @@ int zsetAdd(robj *zobj, double score, sds ele, int *flags, double *newscore) {
|
|||||||
zsetConvert(zobj,OBJ_ENCODING_SKIPLIST);
|
zsetConvert(zobj,OBJ_ENCODING_SKIPLIST);
|
||||||
if (sdslen(ele) > server.zset_max_ziplist_value)
|
if (sdslen(ele) > server.zset_max_ziplist_value)
|
||||||
zsetConvert(zobj,OBJ_ENCODING_SKIPLIST);
|
zsetConvert(zobj,OBJ_ENCODING_SKIPLIST);
|
||||||
|
if (newscore) *newscore = score;
|
||||||
*flags |= ZADD_ADDED;
|
*flags |= ZADD_ADDED;
|
||||||
return 1;
|
return 1;
|
||||||
} else {
|
} else {
|
||||||
@ -1359,6 +1360,7 @@ int zsetAdd(robj *zobj, double score, sds ele, int *flags, double *newscore) {
|
|||||||
znode = zslInsert(zs->zsl,score,ele);
|
znode = zslInsert(zs->zsl,score,ele);
|
||||||
serverAssert(dictAdd(zs->dict,ele,&znode->score) == DICT_OK);
|
serverAssert(dictAdd(zs->dict,ele,&znode->score) == DICT_OK);
|
||||||
*flags |= ZADD_ADDED;
|
*flags |= ZADD_ADDED;
|
||||||
|
if (newscore) *newscore = score;
|
||||||
return 1;
|
return 1;
|
||||||
} else {
|
} else {
|
||||||
*flags |= ZADD_NOP;
|
*flags |= ZADD_NOP;
|
||||||
|
@ -290,6 +290,12 @@ start_server {tags {"zset"}} {
|
|||||||
assert_equal 6 [r zscore zset bar]
|
assert_equal 6 [r zscore zset bar]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
test "ZINCRBY return value" {
|
||||||
|
r del ztmp
|
||||||
|
set retval [r zincrby ztmp 1.0 x]
|
||||||
|
assert {$retval == 1.0}
|
||||||
|
}
|
||||||
|
|
||||||
proc create_default_zset {} {
|
proc create_default_zset {} {
|
||||||
create_zset zset {-inf a 1 b 2 c 3 d 4 e 5 f +inf g}
|
create_zset zset {-inf a 1 b 2 c 3 d 4 e 5 f +inf g}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user