Salvatore Sanfilippo
0062194d74
Merge pull request #6654 from oranagra/fix_module_info_warning
...
fix possible warning on incomplete struct init
2020-04-02 16:32:20 +02:00
Salvatore Sanfilippo
10b626b3d5
Merge pull request #6546 from guybe7/fix_neg_zero
...
Make sure Redis does not reply with negative zero
2020-04-02 16:26:57 +02:00
Salvatore Sanfilippo
2f53ad30ee
Merge pull request #6813 from guybe7/debug_object_pass_keyname
...
DEBUG OBJECT should pass keyname to module when loading
2020-04-02 16:20:48 +02:00
antirez
5a3d85745a
LCS: output LCS len as well in IDX mode.
2020-04-02 16:15:17 +02:00
antirez
3f96e1623d
LCS: MINMATCHLEN and WITHMATCHLEN options.
2020-04-02 13:37:35 +02:00
Salvatore Sanfilippo
88351275fe
Merge pull request #6960 from devnexen/debug_arm_linux
...
debug, dump registers on arm too.
2020-04-02 11:26:08 +02:00
Salvatore Sanfilippo
fa4f50739a
Merge pull request #7006 from hwware/fixspelling
...
fix spelling in cluster.c clusterDelNode
2020-04-02 11:23:53 +02:00
Salvatore Sanfilippo
dfef407499
Merge pull request #7029 from valentinogeron/fix-xack
...
XACK should be executed in a "all or nothing" fashion.
2020-04-02 11:23:23 +02:00
Salvatore Sanfilippo
8d6dc136e1
Merge pull request #7041 from hwware/trackingfix
...
CLIENT TRACKING Command Fix: Add More Checking for OPTIN/OPTOUT mode
2020-04-02 11:22:30 +02:00
Salvatore Sanfilippo
b73d87f5e5
Merge pull request #7039 from guybe7/persist_ksn
...
PERSIST should notify a keyspace event
2020-04-02 11:21:20 +02:00
Salvatore Sanfilippo
babada8b5f
Merge pull request #7042 from guybe7/stream_cg_last_id_fix
...
streamReplyWithRange: Redundant XSETIDs to replica
2020-04-02 11:20:54 +02:00
antirez
80ec0431e8
Simplify comment in moduleTryServeClientBlockedOnKey().
2020-04-02 11:20:09 +02:00
antirez
545a5046f5
Merge branch 'unstable' of github.com:/antirez/redis into unstable
2020-04-02 11:18:33 +02:00
Salvatore Sanfilippo
10afb9639a
Merge pull request #6798 from guybe7/module_circular_block
...
Fix memory corruption in moduleHandleBlockedClients
2020-04-02 11:17:29 +02:00
antirez
88e66ecf94
LCS: 7x speedup by accessing the array with better locality.
2020-04-01 23:45:07 +02:00
antirez
8cdc15c309
LCS: implement KEYS option.
2020-04-01 22:11:59 +02:00
antirez
4cbf3f5ddd
LCS: other fixes to range emission.
2020-04-01 17:36:32 +02:00
antirez
c9c03c3ee6
LCS: fix emission of last range starting at index 0.
2020-04-01 17:14:40 +02:00
antirez
b3400559be
LCS: implement range indexes option.
2020-04-01 17:11:31 +02:00
antirez
1010c1b43e
LCS: initial functionality implemented.
2020-04-01 16:13:18 +02:00
Guy Benoish
c4dc5b80b2
Fix memory corruption in moduleHandleBlockedClients
...
By using a "circular BRPOPLPUSH"-like scenario it was
possible the get the same client on db->blocking_keys
twice (See comment in moduleTryServeClientBlockedOnKey)
The fix was actually already implememnted in
moduleTryServeClientBlockedOnKey but it had a bug:
the funxction should return 0 or 1 (not OK or ERR)
Other changes:
1. Added two commands to blockonkeys.c test module (To
reproduce the case described above)
2. Simplify blockonkeys.c in order to make testing easier
3. cast raxSize() to avoid warning with format spec
2020-04-01 12:53:26 +03:00
antirez
38076fd6ba
cast raxSize() to avoid warning with format spec.
2020-03-31 17:41:46 +02:00
antirez
1d13ff0b39
Minor changes to #7037 .
2020-03-31 17:10:09 +02:00
Salvatore Sanfilippo
0c52ce6c8e
Merge pull request #7037 from guybe7/fix_module_replicate_multi
...
Modules: Test MULTI/EXEC replication of RM_Replicate
2020-03-31 17:00:57 +02:00
Salvatore Sanfilippo
a20c206de7
Merge pull request #7048 from guybe7/rename_unblock_stream
...
RENAME can unblock XREADGROUP
2020-03-31 16:55:29 +02:00
Guy Benoish
6c8221580c
RENAME can unblock XREADGROUP
...
Other changes:
Support stream in serverLogObjectDebugInfo
2020-03-31 17:41:10 +03:00
Guy Benoish
d6eb3afd13
Modules: Test MULTI/EXEC replication of RM_Replicate
...
Makse sure call() doesn't wrap replicated commands with
a redundant MULTI/EXEC
Other, unrelated changes:
1. Formatting compiler warning in INFO CLIENTS
2. Use CLIENT_ID_AOF instead of UINT64_MAX
2020-03-31 13:55:51 +03:00
antirez
1b4bc60999
Merge branch 'pubsub_patterns_boost' of https://github.com/leeyiw/redis into leeyiw-pubsub_patterns_boost
2020-03-31 12:40:08 +02:00
antirez
4379b8b411
Fix the propagate Tcl test after module changes.
2020-03-31 12:09:38 +02:00
antirez
95f154985c
Modify the propagate unit test to show more cases.
2020-03-31 12:04:06 +02:00
antirez
9dcf878f1b
Fix module commands propagation double MULTI bug.
...
37a10cef
introduced automatic wrapping of MULTI/EXEC for the
alsoPropagate API. However this collides with the built-in mechanism
already present in module.c. To avoid complex changes near Redis 6 GA
this commit introduces the ability to exclude call() MUTLI/EXEC wrapping
for also propagate in order to continue to use the old code paths in
module.c.
2020-03-31 11:00:45 +02:00
antirez
7698316fda
Fix RM_Call() stale comment due to cut&paste.
2020-03-31 10:27:47 +02:00
antirez
f6d5996ead
Merge branch 'unstable' of github.com:/antirez/redis into unstable
2020-03-30 17:29:04 +02:00
antirez
3ef59b50c4
Precise timeouts: reference client pointer directly.
2020-03-30 15:22:59 +02:00
Guy Benoish
12d7479144
streamReplyWithRange: Redundant XSETIDs to replica
...
propagate_last_id is declared outside of the loop but used
only from within the loop. Once it's '1' it will never go
back to '0' and will replicate XSETID even for IDs that
don't actually change the last_id.
While not a serious bug (XSETID always used group->last_id
so there's no risk), it does causes redundant traffic
between master and its replicas
2020-03-30 10:53:03 +03:00
hwware
86c76cad74
add check for not switching between optin optout mode directly
2020-03-29 23:20:54 -04:00
hwware
1ef44f8243
add check for not providing both optin optout flag
2020-03-29 23:06:50 -04:00
Guy Benoish
3f0afab301
PERSIST should notify a keyspace event
2020-03-29 17:50:42 +03:00
Salvatore Sanfilippo
aca7f36b57
Merge pull request #7033 from OMG-By/unstable
...
fix: dict.c->dictResize()->minimal type
2020-03-29 16:17:52 +02:00
OMG-By
6d2f1188ac
fix: dict.c->dictResize()->minimal type
2020-03-29 00:04:59 +08:00
Salvatore Sanfilippo
e8afadd52c
Merge pull request #7032 from soloestoy/psync2-meaningful-offset-bugfix
...
PSYNC2: reset backlog_idx and master_repl_offset correctly
2020-03-28 14:52:11 +01:00
zhaozhao.zz
36ee294e83
PSYNC2: reset backlog_idx and master_repl_offset correctly
2020-03-28 20:59:01 +08:00
antirez
dd7e61d77f
timeout.c created: move client timeouts code there.
2020-03-27 16:35:03 +01:00
antirez
0e22cb2680
Precise timeouts: cleaup the table on unblock.
...
Now that this mechanism is the sole one used for blocked clients
timeouts, it is more wise to cleanup the table when the client unblocks
for any reason. We use a flag: CLIENT_IN_TO_TABLE, in order to avoid a
radix tree lookup when the client was already removed from the table
because we processed it by scanning the radix tree.
2020-03-27 16:35:03 +01:00
antirez
13e4c2a9b1
Precise timeouts: fix comments after functional change.
2020-03-27 16:35:03 +01:00
antirez
aa9d92d94a
Precise timeouts: use only radix tree for timeouts.
2020-03-27 16:35:03 +01:00
antirez
077f965426
Precise timeouts: fast exit for clientsHandleShortTimeout().
2020-03-27 16:35:03 +01:00
antirez
8d11e0df7a
Precise timeouts: fix bugs in initial implementation.
2020-03-27 16:35:03 +01:00
antirez
324a8c91d0
Precise timeouts: working initial implementation.
2020-03-27 16:35:03 +01:00
antirez
8d116cc8a2
Precise timeouts: refactor unblocking on timeout.
2020-03-27 16:35:02 +01:00