17 Commits

Author SHA1 Message Date
dejun.xdj
80257dfa77 Streams: add streamCompareID() declaration in stream.h. 2018-07-14 15:02:24 +08:00
antirez
852cc013ac Streams: iterator entry deletion abilities. 2018-04-17 17:18:00 +02:00
antirez
a4b94b8e72 CG: AOF rewriting implemented. 2018-03-23 17:21:31 +01:00
antirez
378b5761d8 CG: Replication WIP 1: XREADGROUP and XCLAIM propagated as XCLAIM. 2018-03-19 18:02:19 +01:00
antirez
84667bff70 CG: RDB loading first implementation. 2018-03-15 12:54:10 +01:00
antirez
ec0faf1bd9 CG: XPENDING should not create consumers and obey to count. 2018-03-15 12:54:10 +01:00
antirez
505520ab09 CG: Now XREADGROUP + blocking operations work. 2018-03-15 12:54:10 +01:00
antirez
68a8dbb256 CG: first draft of streamReplyWithRangeFromConsumerPEL(). 2018-03-15 12:54:10 +01:00
antirez
4a5eaaeb76 CG: creation of NACK entries in PELs. 2018-03-15 12:54:10 +01:00
antirez
6648d60246 CG: consumer lookup + initial streamReplyWithRange() work to supprot CG. 2018-03-15 12:54:10 +01:00
antirez
59eb392351 CG: XGROUPREAD group option parsing and groups lookup. 2018-03-15 12:54:10 +01:00
antirez
4925f7773c CG: data structures design + XGROUP CREATE implementation. 2018-03-15 12:54:10 +01:00
antirez
fbee3af6ad Streams: state machine for reverse iteration WIP 1. 2017-12-01 10:24:25 +01:00
antirez
731ad0ef1d Streams: items compression implemented.
The approach used is to set a fixed header at the start of every
listpack blob (that contains many entries). The header contains a
"master" ID and fields, that are initially just obtained from the first
entry inserted in the listpack, so that the first enty is always well
compressed. Later every new entry is checked against these fields, and
if it matches, the SAMEFIELD flag is set in the entry so that we know to
just use the master entry flags. The IDs are always delta-encoded
against the first entry. This approach avoids cascading effects in which
entries are encoded depending on the previous entries, in order to avoid
complexity and rewritings of the data when data is removed in the middle
(which is a planned feature).
2017-12-01 10:24:24 +01:00
antirez
3d15e3f722 Streams: export iteration API. 2017-12-01 10:24:24 +01:00
antirez
f028e4e68e Streams: RDB saving. 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