summaryrefslogtreecommitdiff
path: root/src/t_stream.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix usage of server.stream_node_max_*Guy Benoish2019-10-101-3/+3
|
* Fix start and end key initializeJames Rouzier2019-04-111-2/+2
|
* Merge pull request #5787 from soloestoy/bugfix-xgroup-create-with-mkstreamSalvatore Sanfilippo2019-03-131-5/+7
|\ | | | | Streams: checkType before XGROUP CREATE
| * Streams: checkType before XGROUP CREATEzhaozhao.zz2019-01-161-5/+7
| | | | | | | | Fix issue #5785, in case create group on a key is not stream.
* | Only increment delivery count if JUSTID option is omittedSteve Webster2019-03-121-2/+3
| |
* | Increment delivery counter on XCLAIM unless RETRYCOUNT specifiedSteve Webster2019-03-081-2/+6
|/ | | | | | | | | | | | | The XCLAIM docs state the XCLAIM increments the delivery counter for messages. This PR makes the code match the documentation - which seems like the desired behaviour - whilst still allowing RETRYCOUNT to be specified manually. My understanding of the way streamPropagateXCLAIM() works is that this change will safely propagate to replicas since retry count is pulled directly from the streamNACK struct. Fixes #5194
* RESP3: t_stream.c updated.antirez2019-01-091-38/+43
|
* Stream: fix XREADGROUP history reading of deleted messages.antirez2018-11-191-1/+1
| | | | | | | | This commit fixes #5570. It is a similar bug to one fixed a few weeks ago and is due to the range API to be called with NULL as "end ID" parameter instead of repeating again the start ID, to be sure that we selectively issue the entry with a given ID, or we get zero returned (and we know we should emit a NULL reply).
* Streams: fix XREADGROUP history reading when CG last_id is low.antirez2018-11-191-9/+12
| | | | | | | This fixes the issue reported in #5570. This was fixed the hard way, that is, propagating more information to the lower level API about this being a request to read just the history, so that the code is simpler and less likely to regress.
* t_stream.c comment resized to 80 cols.antirez2018-11-191-1/+2
|
* Fix XCLAIM missing entry bug.antirez2018-11-051-2/+3
| | | | | | | | | | | | | This bug had a double effect: 1. Sometimes entries may not be emitted, producing broken protocol where the array length was greater than the emitted entires, blocking the client waiting for more data. 2. Some other time the right entry was claimed, but a wrong entry was returned to the client. This fix should correct both the instances.
* Merge branch 'unstable' of github.com:/antirez/redis into unstableantirez2018-11-051-12/+12
|\
| * Use typedef'd mstime_t instead of time_tmichael-grunder2018-11-031-1/+1
| | | | | | | | This fixes an overflow on 32-bit systems.
| * Fix some typosGuy Korland2018-10-311-11/+11
| |
* | Improve streamReplyWithRange() top comment.antirez2018-11-051-5/+9
|/
* Add command fingerprint comment for XSETID.antirez2018-10-251-1/+3
|
* Merge branch 'unstable' of github.com:/antirez/redis into unstableantirez2018-10-251-1/+2
|\
| * Merge pull request #5459 from itamarhaber/xpending_count_underflowSalvatore Sanfilippo2018-10-251-1/+2
| |\ | | | | | | A fix to XPENDING's count underflow
| | * Plugs a potential underflowItamar Haber2018-10-171-0/+1
| | |
| | * Corrects inline documentation of syntaxItamar Haber2018-10-171-1/+1
| | |
* | | Fix XRANGE COUNT option for value of 0.antirez2018-10-251-2/+8
| | |
* | | Fix typo in streamReplyWithRange() top comment.antirez2018-10-241-1/+1
|/ /
* | Streams: use bulk replies instead of status replies.antirez2018-10-171-16/+16
|/ | | | | | | They play better with Lua scripting, otherwise Lua will see status replies as "ok" = "string" which is very odd, and actually as @oranagra reasoned in issue #5456 in the rest of the Redis code base there was no such concern as saving a few bytes when the protocol is emitted.
* Fix conditional in XGROUP.antirez2018-10-171-1/+1
|
* Fix XGROUP CREATE MKSTREAM handling of .antirez2018-10-171-2/+7
|
* Process MKSTREAM option of XGROUP CREATE at a later time.antirez2018-10-171-17/+28
| | | | | This avoids issues with having to replicate a command that produced errors.
* XGROUP CREATE: MKSTREAM option for automatic stream creation.antirez2018-10-171-5/+29
|
* XSETID: accept IDs based on last entry.antirez2018-10-161-5/+18
| | | | Related to #5426.
* Streams: XSTREAM SETID -> XSETID.antirez2018-10-161-65/+15
| | | | Keep vanilla stream commands at toplevel, see #5426.
* Merge pull request #5426 from soloestoy/feature-xstreamSalvatore Sanfilippo2018-10-161-0/+69
|\ | | | | Bugfix data inconsistency after aof rewrite, and add XSTREAM command.
| * Streams: rewrite id in XSTREAM CREATE *zhaozhao.zz2018-10-091-0/+4
| |
| * Streams: add a new command XTREAMzhaozhao.zz2018-10-091-0/+65
| | | | | | | | | | XSTREAM CREATE <key> <id or *> -- Create a new empty stream. XSTREAM SETID <key> <id or $> -- Set the current stream ID.
* | Make comment about nack->consumer test for minidle more obvious.antirez2018-10-151-2/+4
| | | | | | | | Related to #5437.
* | Streams: use propagate_last_id itself as streamPropagateGroupID trigger.antirez2018-10-151-2/+2
| | | | | | | | Avoid storing the dirty value. See #5437.
* | Streams: better naming: lastid_updated -> propagate_last_id.antirez2018-10-151-6/+6
| | | | | | | | See #5437 but also I updated a previous usage of the same var name.
* | Streams: panic if streamID invalid after check, should not be possible.zhaozhao.zz2018-10-111-1/+2
| |
* | Streams: propagate lastid in XCLAIM when it has effectzhaozhao.zz2018-10-111-6/+13
| |
* | Streams: XCLAIM ignore minidle if NACK is created by FORCEzhaozhao.zz2018-10-111-2/+4
| | | | | | | | | | | | Because the NACK->consumer is NULL, if idletime < minidle the NACK does not belong to any consumer, then redis will crash in XPENDING.
* | Streams: bugfix XCLAIM should propagate group name not consumer namezhaozhao.zz2018-10-111-1/+1
| |
* | Fix propagation of consumer groups last ID.antirez2018-10-101-8/+53
|/ | | | Issue #5433.
* Refactoring of XADD / XTRIM MAXLEN rewriting.antirez2018-10-081-22/+15
| | | | See #5141.
* Merge pull request #5141 from soloestoy/fix-xtrim-inconsistencySalvatore Sanfilippo2018-10-081-13/+40
|\ | | | | Fix XTRIM and XADD with MAXLEN inconsistency
| * Streams: propagate specified MAXLEN instead of approximatedzhaozhao.zz2018-08-011-6/+35
| | | | | | | | | | | | Slaves and rebooting redis may have different radix tree struct, by different stream* config options. So propagating approximated MAXLEN to AOF/slaves may lead to date inconsistency.
| * Streams: reset approx_maxlen in every maxlen loopzhaozhao.zz2018-08-011-0/+2
| |
| * Streams: XTRIM will return an error if MAXLEN with a count < 0zhaozhao.zz2018-08-011-1/+6
| |
| * Streams: propagate original MAXLEN argument in XADD contextzhaozhao.zz2018-08-011-12/+3
| | | | | | | | | | | | | | If we rewrite the MAXLEN argument as zero when no trimming was performed, date between master and slave and aof will be inconsistent, because `xtrim maxlen 0` means delete all entries in stream.
* | xclaimCommand(): fix comment typos.antirez2018-10-041-2/+2
| |
* | streamAppendItem(): Update the radix tree pointer only if changed.antirez2018-10-021-1/+2
| |
* | streamIteratorRemoveEntry(): set back lp only if pointer changed.antirez2018-10-021-1/+2
| | | | | | | | | | | | | | Most of the times the pointer will remain the same since integers of similar size don't take more space in listpacks. Related to #5210.
* | Merge pull request #5210 from soloestoy/raxinsert-in-xdelSalvatore Sanfilippo2018-10-021-0/+3
|\ \ | | | | | | Streams: update listpack with new pointer in XDEL