antirez
06a30111a8
Streams: fix XREAD ready-key signaling.
...
With lists we need to signal only on key creation, but streams can
provide data to clients listening at every new item added.
To make this slightly more efficient we now track different classes of
blocked clients to avoid signaling keys when there is nobody listening.
A typical case is when the stream is used as a time series DB and
accessed only by range with XRANGE.
2017-12-01 10:24:24 +01:00
antirez
f3b3ca41f7
Streams: fix XREAD timeout handling, zero is valid.
2017-12-01 10:24:24 +01:00
antirez
6d54ec5e24
Streams: XREAD ability to block fixed.
2017-12-01 10:24:24 +01:00
antirez
b6f1106630
Streams: synchronous xread fixes and improvements.
2017-12-01 10:24:24 +01:00
antirez
6f79b52dfa
Streams: XREAD, first draft. Handling of blocked clients still missing.
2017-12-01 10:24:24 +01:00
antirez
54e221af43
Streams: XREAD arguments parsing.
2017-12-01 10:24:24 +01:00
antirez
428bb7cca0
Streams: augment client.bpop with XREAD specific fields.
2017-12-01 10:24:24 +01:00
antirez
a168cbef13
Streams: implement stream object release.
2017-12-01 10:24:24 +01:00
antirez
760ad8f65c
Streams: XLEN command.
2017-12-01 10:24:24 +01:00
antirez
f028e4e68e
Streams: RDB saving.
2017-12-01 10:24:24 +01:00
antirez
e4e216f8cc
Streams: assign value of 6 to OBJ_STREAM + some refactoring.
2017-12-01 10:24:24 +01:00
antirez
71ad8ff26e
Streams: 12 commits squashed into the initial Streams implementation.
2017-12-01 10:24:24 +01:00