mirror of
https://github.com/fluencelabs/redis
synced 2025-03-30 22:31:03 +00:00
Fix for ZUNIONSTORE bug when there is an empty set among input sets. Regression test added.
This commit is contained in:
parent
330c90b018
commit
521ddcce14
@ -1550,7 +1550,7 @@ void zunionInterGenericCommand(redisClient *c, robj *dstkey, int op) {
|
|||||||
}
|
}
|
||||||
} else if (op == REDIS_OP_UNION) {
|
} else if (op == REDIS_OP_UNION) {
|
||||||
for (i = 0; i < setnum; i++) {
|
for (i = 0; i < setnum; i++) {
|
||||||
if (zuiLength(&src[0]) == 0)
|
if (zuiLength(&src[i]) == 0)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
while (zuiNext(&src[i],&zval)) {
|
while (zuiNext(&src[i],&zval)) {
|
||||||
|
@ -353,6 +353,14 @@ start_server {tags {"zset"}} {
|
|||||||
assert_equal 0 [r exists dst_key]
|
assert_equal 0 [r exists dst_key]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
test "ZUNIONSTORE with empty set - $encoding" {
|
||||||
|
r del zseta zsetb
|
||||||
|
r zadd zseta 1 a
|
||||||
|
r zadd zseta 2 b
|
||||||
|
r zunionstore zsetc 2 zseta zsetb
|
||||||
|
r zrange zsetc 0 -1 withscores
|
||||||
|
} {a 1 b 2}
|
||||||
|
|
||||||
test "ZUNIONSTORE basics - $encoding" {
|
test "ZUNIONSTORE basics - $encoding" {
|
||||||
r del zseta zsetb zsetc
|
r del zseta zsetb zsetc
|
||||||
r zadd zseta 1 a
|
r zadd zseta 1 a
|
||||||
|
Loading…
x
Reference in New Issue
Block a user