Xudong Zhang
209f3a1eba
fix integer overflow
2020-04-07 16:52:04 +02:00
Guy Benoish
7764996bec
Make sure Redis does not reply with negative zero
2020-04-07 16:52:04 +02:00
hwware
b35407fa7c
add check for not switching between optin optout mode directly
2020-04-07 16:52:04 +02:00
hwware
4395889c9e
add check for not providing both optin optout flag
2020-04-07 16:52:04 +02:00
Guy Benoish
1907e0f18f
PERSIST should notify a keyspace event
2020-04-07 16:52:04 +02:00
Guy Benoish
193fc241ca
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-07 16:52:03 +02:00
John Sully
23d75b45ec
Merge branch 'redis_6_merge' into keydbpro
...
Former-commit-id: 8d8115ff59f5838e13e911416eff7dfe2c0d92dc
2020-04-06 01:25:15 -04:00
John Sully
945f40c76a
Fix failure to AUTH with master when masterauth is set last
...
Former-commit-id: 3fdc8608f35b9e333a1c789b039d16722a6ceef5
2020-04-06 01:24:59 -04:00
John Sully
6f15ce125c
Add the ability to set a starting core # when setting thread affinity
...
Former-commit-id: 9e2e2067c6df5919f1c6b8b9e6e3457c7edc0755
2020-04-04 22:58:17 -04:00
John Sully
662a1b6a42
Fix issue #164
...
Former-commit-id: f112c77fcc3a60277ce344478bc37adb0fe4a99d
2020-04-04 22:45:12 -04:00
John Sully
de11140a17
Role command protocol corruption with multiple masters
...
Former-commit-id: 888d69a87a0076caa5b381d2531a6a638aa69051
2020-04-04 22:32:15 -04:00
John Sully
eeca58777d
Fix subkey expires not replicating correctly, and AOF issues
...
Former-commit-id: bd183cdee13081a02efef5df75edf2292b872a16
2020-04-04 21:52:27 -04:00
antirez
957e917a84
Redis 6.0-RC3.
2020-03-31 17:56:04 +02:00
antirez
ef1b1f01a8
cast raxSize() to avoid warning with format spec.
2020-03-31 17:41:23 +02:00
antirez
9f347fabba
Minor changes to #7037 .
2020-03-31 17:12:19 +02:00
Guy Benoish
a509400d58
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 17:12:19 +02:00
antirez
c3b268a0bc
timeout.c created: move client timeouts code there.
2020-03-31 16:57:20 +02:00
Oran Agra
0f7dfc378c
AOFRW on an empty stream created with MKSTREAM loads badkly
...
the AOF will be loaded successfully, but the stream will be missing,
i.e inconsistencies with the original db.
this was because XADD with id of 0-0 would error.
add a test to reproduce.
2020-03-31 16:57:20 +02:00
Guy Benoish
805c8c94a9
RENAME can unblock XREADGROUP
...
Other changes:
Support stream in serverLogObjectDebugInfo
2020-03-31 16:57:20 +02:00
antirez
97b80b57e9
Fix the propagate Tcl test after module changes.
2020-03-31 16:57:20 +02:00
antirez
4f6b6b8008
Modify the propagate unit test to show more cases.
2020-03-31 16:57:20 +02:00
antirez
616b1cb7ac
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 16:57:20 +02:00
antirez
08fdef4bf6
Fix RM_Call() stale comment due to cut&paste.
2020-03-31 16:57:20 +02:00
OMG-By
26b79ca18c
fix: dict.c->dictResize()->minimal type
2020-03-31 16:57:20 +02:00
zhaozhao.zz
fa41863752
PSYNC2: reset backlog_idx and master_repl_offset correctly
2020-03-31 16:57:20 +02:00
antirez
bbbc80acae
Precise timeouts: reference client pointer directly.
2020-03-31 16:57:20 +02:00
antirez
67643ead69
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-31 16:56:46 +02:00
antirez
ad94066ec8
Precise timeouts: fix comments after functional change.
2020-03-31 16:56:46 +02:00
antirez
a443ec2e9a
Precise timeouts: use only radix tree for timeouts.
2020-03-31 16:56:46 +02:00
antirez
6862fd70da
Precise timeouts: fast exit for clientsHandleShortTimeout().
2020-03-31 16:56:46 +02:00
antirez
30f1df8c48
Precise timeouts: fix bugs in initial implementation.
2020-03-31 16:56:46 +02:00
antirez
7add0f2490
Precise timeouts: working initial implementation.
2020-03-31 16:56:46 +02:00
antirez
9d6d177994
Precise timeouts: refactor unblocking on timeout.
2020-03-31 16:56:46 +02:00
antirez
316a8f1545
PSYNC2: fix backlog_idx when adjusting for meaningful offset
...
See #7002 .
2020-03-31 16:56:46 +02:00
伯成
11db53f875
Boost up performance for redis PUB-SUB patterns matching
...
If lots of clients PSUBSCRIBE to same patterns, multiple pattens matching will take place. This commit change it into just one single pattern matching by using a `dict *` to store the unique pattern and which clients subscribe to it.
2020-03-31 12:47:14 +02:00
John Sully
16e5da688f
Merge branch 'keydbpro' into PRO_RELEASE_6
...
Former-commit-id: e6c8a157e136ac5e5b44b5ea60c619ad4e55942b
2020-03-30 00:58:38 -04:00
John Sully
f5ab6801be
Merge branch 'redis_6_merge' into keydbpro
...
Former-commit-id: 86f7292ed375d509645458704828e72fdbfea936
2020-03-30 00:57:58 -04:00
John Sully
e9d1f9bc6c
Merge branch 'redis_6_merge' of https://github.com/JohnSully/KeyDB into redis_6_merge
...
Former-commit-id: 95b4f899c5a9218f7ed4cbb81b7f0b894bffe83f
2020-03-30 00:52:43 -04:00
John Sully
4cf5373b9c
Merge branch 'unstable' into redis_6_merge
...
Former-commit-id: 294615531347d7db5d1b0c6a021ac9b05e0bcb48
2020-03-30 00:52:12 -04:00
John Sully
754138a94c
Allow active replicas to connect to each other when replica-serve-stale-data is set
...
Former-commit-id: f2ca2aa1f70956a0309d6a2441417a80383fd717
2020-03-30 00:51:40 -04:00
John Sully
b28c7298ce
Don't send build log to stderr
...
Former-commit-id: b20bf10fda319389c6e7d06cc7cc6c6b6b4f1c6c
2020-03-28 23:36:57 -04:00
John Sully
623c617042
Merge branch 'unstable' into redis_6_merge
...
Former-commit-id: 208c15bc16aa2a0abf8f8dbcb132316134f0be31
2020-03-27 14:50:37 -04:00
John Sully
6283ca8a2c
Raspberry Pi fixes (compile and replication)
...
Former-commit-id: c3d3c82f3a1751f063a3e77b4bde47f1802a517e
2020-03-27 12:46:25 -04:00
John Sully
d2ab029447
OS X Build break fix
...
Former-commit-id: 98da479d9241c077d3c11787800075dea91e989e
2020-03-26 15:20:55 -04:00
John Sully
9461513066
bump version
...
Former-commit-id: 8e855c4568fd555f6df9a5b00bab2e42248127e3
2020-03-26 01:18:21 -04:00
John Sully
0f72eca2a0
Merge branch 'keydbpro' into PRO_RELEASE_6
...
Former-commit-id: a5d8a93a476366ef2aa6fe9c248f33288b322ff6
2020-03-26 01:17:56 -04:00
John Sully
138ce49a96
merge
...
Former-commit-id: 187773190f153f8a7236bc2e4f42bffe6885f727
2020-03-26 01:16:36 -04:00
John Sully
8011cc3c6d
Fix merge issues
...
Former-commit-id: b22d9cc27d0434578891c59825f1c8813a3a9b28
2020-03-25 22:26:27 -04:00
John Sully
aaa751acb8
Merge branch 'unstable' into redis_6_merge
...
Former-commit-id: 908cf5042ebcd7870166bd1a0bb450f37e5f3b4d
2020-03-25 22:12:22 -04:00
John Sully
356ed25c62
Fix issue #143
...
Former-commit-id: 6ec1641294b23e22a2a5dc5cc6098a02ce234df3
2020-03-25 21:55:31 -04:00