- 27 Oct, 2020 8 commits
-
-
Madelyn Olson authored
partial cherry pick from 7d217547
-
Guy Benoish authored
Fixes GitHub issue #6492 Added stream support in RM_KeyType and RM_ValueLength. Also moduleDelKeyIfEmpty was updated, even though it has no effect now (It will be relevant when stream type direct API will be coded - i.e. RM_StreamAdd) cherry picked from commit 1833d008 * modified to avoid adding new API to 5.0 (reverting the change to RM_KeyType)
-
Itamar Haber authored
Otherwise, it is treated as a single allocation and freed synchronously. The following logic is used for estimating the effort in constant-ish time complexity: 1. Check the number of nodes. 1. Add an allocation for each consumer group registered inside the stream. 1. Check the number of PELs in the first CG, and then add this count times the number of CGs. 1. Check the number of consumers in the first CG, and then add this count times the number of CGs. (cherry picked from commit 5b0a06af) (cherry picked from commit 5a9a653f)
-
Oran Agra authored
Similarly to EXPIREAT with TTL in the past, which implicitly deletes the key and return success, RESTORE should not store key that are already expired into the db. When used together with REPLACE it should emit a DEL to keyspace notification and replication stream. (cherry picked from commit 5977a948) (cherry picked from commit 95ba01b5)
-
Liu Zhen authored
`clusterStartHandshake` will start hand handshake and eventually send CLUSTER MEET message, which is strictly prohibited in the REDIS CLUSTER SPEC. Only system administrator can initiate CLUSTER MEET message. Futher, according to the SPEC, rather than IP/PORT pairs, only nodeid can be trusted. (cherry picked from commit 84a7a905)
-
Guy Benoish authored
Same goes for XGROUP DELCONSUMER (But in this case, it doesn't have any visible effect) (cherry picked from commit 3a441c7d)
-
- 24 Apr, 2020 1 commit
-
-
antirez authored
-
- 23 Apr, 2020 2 commits
-
-
yanhui13 authored
-
srzhao authored
Checking OOM by `getMaxMemoryState` inside script might get different result with `freeMemoryIfNeededAndSafe` at script start, because lua stack and arguments also consume memory. This leads to memory `borderline` when memory grows near server.maxmemory: - `freeMemoryIfNeededAndSafe` at script start detects no OOM, no memory freed - `getMaxMemoryState` inside script detects OOM, script aborted We solve this 'borderline' issue by saving OOM state at script start to get stable lua OOM state. related to issue #6565 and #5250.
-
- 17 Apr, 2020 2 commits
- 08 Apr, 2020 1 commit
-
-
antirez authored
See #7071.
-
- 12 Mar, 2020 2 commits
-
-
antirez authored
-
Salvatore Sanfilippo authored
Fix Pi building needing -latomic, 5.0 branch backport
-
- 11 Mar, 2020 1 commit
-
-
Dustin Collins authored
-
- 05 Mar, 2020 18 commits
-
-
srzhao authored
-
Ariel authored
-
Guy Benoish authored
Use built-in alsoPropagate mechanism that wraps commands in MULTI/EXEC before sending them to replica/AOF
-
Oran Agra authored
currently there's no bug since the flags these functions handle are always lower than 32bit, but still better fix the type to prevent future bugs.
-
Guy Benoish authored
1. server.repl_no_slaves_since can be set when a MONITOR client disconnects 2. c->repl_ack_time can be set by a newline from a MONITOR client 3. Improved comments
-
WuYunlong authored
-
antirez authored
-
WuYunlong authored
-
antirez authored
Related to #6054.
-
antirez authored
We exit later, so no bug fixed, but it is more correct. See #6054, thanks to @ShooterIT for finding the issue.
-
WuYunlong authored
-
WuYunlong authored
-
Leo Murillo authored
-
Guy Benoish authored
This commit solves the following bug: 127.0.0.1:6379> XGROUP CREATE x grp $ MKSTREAM OK 127.0.0.1:6379> XADD x 666 f v "666-0" 127.0.0.1:6379> XREADGROUP GROUP grp Alice BLOCK 0 STREAMS x > 1) 1) "x" 2) 1) 1) "666-0" 2) 1) "f" 2) "v" 127.0.0.1:6379> XADD x 667 f v "667-0" 127.0.0.1:6379> XDEL x 667 (integer) 1 127.0.0.1:6379> XREADGROUP GROUP grp Alice BLOCK 0 STREAMS x > 1) 1) "x" 2) (empty array) The root cause is that we use s->last_id in streamCompareID while we should use the last *valid* ID
-
antirez authored
Fixes #6744.
-
Guy Benoish authored
This commit solves several edge cases that are related to exhausting the streamID limits: We should correctly calculate the succeeding streamID instead of blindly incrementing 'seq' This affects both XREAD and XADD. Other (unrelated) changes: Reply with a better error message when trying to add an entry to a stream that has exhausted last_id
-
antirez authored
-
antirez authored
This bug is from the first version of Redis. Probably the problem here is that before we used an SDS split function that created empty strings for additional spaces, like in "SET foo bar". AFAIK later we replaced it with the curretn sdssplitarg() API that has no such a problem. As a result, we introduced a bug, where it is no longer possible to do something like: SET foo "" Using the inline protocol. Now it is fixed.
-
- 12 Feb, 2020 1 commit
-
-
Khem Raj authored
This helps in avoiding multiple definition of this variable, its also defined globally in sds.c Signed-off-by:
Khem Raj <raj.khem@gmail.com>
-
- 10 Feb, 2020 1 commit
-
-
Seunghoon Woo authored
-
- 08 Jan, 2020 1 commit
-
-
yz1509 authored
-
- 19 Nov, 2019 2 commits