820b1e6e7d
Streams: better naming: lastid_updated -> propagate_last_id.
...
See #5437 but also I updated a previous usage of the same var name.
2018-10-15 11:50:18 +02:00
440574d624
Merge pull request #5437 from soloestoy/fix-xclaim
...
Fix xclaim
2018-10-15 11:47:21 +02:00
f54cde3a15
Rax: radix tree updated to latest version from antirez/rax.
2018-10-13 14:17:38 +02:00
5cc0522303
Streams: panic if streamID invalid after check, should not be possible.
2018-10-11 21:46:47 +08:00
08ae522ff9
Streams: propagate lastid in XCLAIM when it has effect
2018-10-11 21:44:20 +08:00
183ef7ae9b
Streams: XCLAIM ignore minidle if NACK is created by FORCE
...
Because the NACK->consumer is NULL, if idletime < minidle
the NACK does not belong to any consumer, then redis will crash
in XPENDING.
2018-10-11 21:20:49 +08:00
4dc48a0d11
Streams: bugfix XCLAIM should propagate group name not consumer name
2018-10-11 21:12:09 +08:00
91685eeeb1
LOLWUT: capitalize Nees.
2018-10-11 13:00:55 +02:00
1048b5d13a
Merge branch 'unstable' of github.com:/antirez/redis into unstable
2018-10-10 12:51:39 +02:00
c9d9ae7baa
Fix propagation of consumer groups last ID.
...
Issue #5433 .
2018-10-10 12:51:02 +02:00
35b7296ff4
Avoid recreate write handler for protected client.
2018-10-09 20:34:11 +08:00
8e2bbe9105
Free protected clients asynchronously.
...
Related to #4840 .
Note that when we re-enter the event loop with aeProcessEvents() we
don't process timers, nor before/after sleep callbacks, so we should
never end calling freeClientsInAsyncFreeQueue() when re-entering the
loop.
2018-10-09 13:28:51 +02:00
929c686cce
Actually use the protectClient() API where needed.
...
Related to #4804 .
2018-10-09 13:18:52 +02:00
69c30965eb
Introduce protectClient() + some refactoring.
...
The idea is to have an API for the cases like -BUSY state and DEBUG
RELOAD where we have to manually deinstall the read handler.
See #4804 .
2018-10-09 13:15:41 +02:00
6660458a4c
Merge pull request #4804 from soloestoy/fix-debug-load
...
debug: avoid free client unexpectedly when reload & loadaof
2018-10-09 12:56:08 +02:00
db86dfb985
aof.c: improve indentation and change warning message.
...
Related to #5201 .
I removed the !!! Warning part since compared to the other errors, a
missing EXEC is in theory a normal happening in the AOF file, at least
in theory: may happen in a differnet number of situations, and it's
probably better to don't give the user the feeling that something really
bad happened.
2018-10-09 11:51:04 +02:00
1a476b69ad
Merge pull request #5201 from soloestoy/abort-if-lost-exec-aof-load
...
AOF: discard if we lost EXEC when loading aof
2018-10-09 11:47:04 +02:00
480e299436
Streams: rewrite id in XSTREAM CREATE *
2018-10-09 16:22:30 +08:00
b3e80d2f65
Stream & AOF: rewrite stream in correct way
2018-10-09 15:40:20 +08:00
ec511fa709
Streams: add a new command XTREAM
...
XSTREAM CREATE <key> <id or *> -- Create a new empty stream.
XSTREAM SETID <key> <id or $> -- Set the current stream ID.
2018-10-09 13:11:04 +08:00
3e78344d87
Refactoring of XADD / XTRIM MAXLEN rewriting.
...
See #5141 .
2018-10-08 12:05:22 +02:00
e5f1de1448
Merge pull request #5141 from soloestoy/fix-xtrim-inconsistency
...
Fix XTRIM and XADD with MAXLEN inconsistency
2018-10-08 12:00:00 +02:00
534c3bc21a
Fix typo
2018-10-07 13:37:58 +02:00
3d07ed983e
Fix typo in replicationCron() comment.
2018-10-05 18:30:45 +02:00
ce8b6ede34
Fix typo in design comment of bio.c.
2018-10-05 18:29:23 +02:00
68c0e6e331
xclaimCommand(): fix comment typos.
2018-10-04 17:34:06 +02:00
87264235cc
fix timer context selected database
2018-10-04 17:02:10 +03:30
32e0d2376f
streamAppendItem(): Update the radix tree pointer only if changed.
2018-10-02 19:45:33 +02:00
9d4f51e1ff
Listpack: optionally force reallocation on inserts.
...
This is useful in order to spot bugs where we fail
at updating the pointer returned by the insertion
function. Normally often the same pointer is returned,
making it harder than needed to spot bugs.
Related to #5210 .
2018-10-02 19:37:36 +02:00
73a78adf13
Fix printf type mismatch in genRedisInfoString().
2018-10-02 16:26:30 +02:00
c7c3b23787
streamIteratorRemoveEntry(): set back lp only if pointer changed.
...
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 .
2018-10-02 16:20:40 +02:00
9fe7cd8f14
Merge pull request #5210 from soloestoy/raxinsert-in-xdel
...
Streams: update listpack with new pointer in XDEL
2018-10-02 16:18:55 +02:00
2b09884faf
Merge pull request #5392 from soloestoy/bugfix-brpoplpush
...
bugfix: replace lastcmd with cmd when rewrite BRPOPLPUSH as RPOPLPUSH
2018-10-02 16:09:22 +02:00
e19a06d2dd
Merge pull request #5242 from oranagra/script_mem
...
script cache memory in INFO and MEMORY includes both script code and overheads
2018-10-02 16:03:05 +02:00
fe43406929
Merge pull request #5397 from bmerry/fix-bad-zmalloc-size
...
Fix invalid use of sdsZmallocSize on an embedded string
2018-10-01 13:30:42 +02:00
9ce638695c
Merge pull request #5398 from bmerry/fix-zrealloc-accounting
...
Fix incorrect memory usage accounting in zrealloc
2018-10-01 13:28:53 +02:00
cd2ee8b113
Merge pull request #5396 from oranagra/cmdstats_exec
...
fix #5024 - commandstats for multi-exec were logged as EXEC.
2018-10-01 13:24:49 +02:00
1da93f85cc
Merge pull request #5400 from halaei/fix-dict-get-on-not-found
...
fix dict get on not found
2018-10-01 13:22:33 +02:00
86fb7b20bf
fix dict get on not found
2018-10-01 13:57:25 +03:30
9e0e5ccbf4
Fix XINFO comment for consistency.
2018-10-01 11:38:58 +02:00
8fd1031b10
Fix incorrect memory usage accounting in zrealloc
...
When HAVE_MALLOC_SIZE is false, each call to zrealloc causes used_memory
to increase by PREFIX_SIZE more than it should, due to mis-matched
accounting between the original zmalloc (which includes PREFIX size in
its increment) and zrealloc (which misses it from its decrement).
I've also supplied a command-line test to easily demonstrate the
problem. It's not wired into the test framework, because I don't know
TCL so I'm not sure how to automate it.
2018-09-30 11:49:03 +02:00
f03aed3ca9
fix #5024 - commandstats for multi-exec were logged as EXEC.
...
this was broken a while back by ba9154d7e7
the purpose of which was to fix commandstats for GEOADD
2018-09-30 12:43:11 +03:00
ecc48369ce
Fix invalid use of sdsZmallocSize on an embedded string
...
sdsZmallocSize assumes a dynamically allocated SDS. When given a string
object created by createEmbeddedStringObject, it calls zmalloc_size on a
pointer that isn't the one returned by zmalloc
2018-09-30 11:32:48 +02:00
08c26591e3
Try to avoid issues with GCC pragmas and older compilers.
...
See issue #5394 .
2018-09-28 13:00:44 +02:00
fc9b4e7958
bugfix: replace lastcmd with cmd when rewrite BRPOPLPUSH as RPOPLPUSH
...
There are two problems if we use lastcmd:
1. BRPOPLPUSH cannot be rewrited as RPOPLPUSH in multi/exec
In mulit/exec context, the lastcmd is exec.
2. Redis will crash when execute RPOPLPUSH loading from AOF
In fakeClient, the lastcmd is NULL.
2018-09-28 12:06:48 +08:00
466c277b4f
Move child termination to readSyncBulkPayload
2018-09-27 19:38:58 +03:00
5aa347b377
Modules: hellodict example WIP #3 : KEYRANGE.
2018-09-27 17:01:35 +02:00
0aecb135c9
Modules: Modules: dictionary API WIP #13 : Compare API exported.
2018-09-27 11:46:22 +02:00
80bde9844b
Modules: Modules: dictionary API WIP #12 : DictCompare API.
2018-09-27 11:44:25 +02:00
7af83a0c11
Modules: Modules: dictionary API WIP #11 : DictCompareC API.
2018-09-27 11:44:16 +02:00