Merge pull request #6574 from guybe7/fix_xadd_empty_id
XADD with ID 0-0 stores an empty key
This commit is contained in:
commit
70016f7861
@ -1220,6 +1220,14 @@ void xaddCommand(client *c) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Return ASAP if minimal ID (0-0) was given so we avoid possibly creating
|
||||||
|
* a new stream and have streamAppendItem fail, leaving an empty key in the
|
||||||
|
* database. */
|
||||||
|
if (id_given && id.ms == 0 && id.seq == 0) {
|
||||||
|
addReplyError(c,"The ID specified in XADD must be greater than 0-0");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
/* Lookup the stream at key. */
|
/* Lookup the stream at key. */
|
||||||
robj *o;
|
robj *o;
|
||||||
stream *s;
|
stream *s;
|
||||||
|
@ -123,6 +123,12 @@ start_server {
|
|||||||
assert {[r xlen mystream] == $j}
|
assert {[r xlen mystream] == $j}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
test {XADD with ID 0-0} {
|
||||||
|
r DEL mystream
|
||||||
|
catch {r XADD mystream 0-0 k v} err
|
||||||
|
assert {[r EXISTS mystream] == 0}
|
||||||
|
}
|
||||||
|
|
||||||
test {XRANGE COUNT works as expected} {
|
test {XRANGE COUNT works as expected} {
|
||||||
assert {[llength [r xrange mystream - + COUNT 10]] == 10}
|
assert {[llength [r xrange mystream - + COUNT 10]] == 10}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user