John Sully
97d6875862
Fix failover command test failures
...
Former-commit-id: d3c37c7159a92319759a33851669862a82cf1b28
2021-05-29 01:19:12 +00:00
John Sully
0cdb32f3e4
Remove dup'd code from merge
...
Former-commit-id: 807f0201845a698514f1ce9382338bc74ba57e5e
2021-05-29 01:08:52 +00:00
John Sully
eb000a8c0f
ProcessingEventsWhileBlocked is relevant only to the current thread
...
Former-commit-id: b400be68b7a45e73ea851c11dfee3fdcbacb4794
2021-05-29 01:08:43 +00:00
John Sully
76a47aa3e1
Make processClients reentrant
...
Former-commit-id: e39bdb58ec28d80c5ed2cf15ef6bc7b884e14d4b
2021-05-29 01:08:14 +00:00
John Sully
ea5317c310
Don't have dangling expires
...
Former-commit-id: 83c8977033d79b6ec69e677dff19f68df53535be
2021-05-29 01:07:46 +00:00
John Sully
6c510bc5cb
Repair async rehash code removed by merge
...
Former-commit-id: 14a3ab8133c474bf8f1ad636c8699d5d59c5394e
2021-05-29 00:24:46 +00:00
John Sully
6b4f686f5f
Merge branch 'unstable' into keydbpro
...
Former-commit-id: 205d8f18d2bb8df5253bab40578b006b7aa73fd5
2021-05-28 23:32:46 +00:00
VivekSainiEQ
4d85f3f6b0
Added more synchronization and fixed some data races
...
Former-commit-id: 183e015dac6f85df1c94d0761e89bc23d9f53319
2021-05-27 18:57:23 +00:00
VivekSainiEQ
8a7cf8a608
Added transmitted RDB lock
...
Former-commit-id: 4b32167afc85742d85ff9b47b2c2e0b6b02e140a
2021-05-26 20:10:33 +00:00
John Sully
d53454a392
Ensure multi-thread handling of cached master is equivalent to single thread case
...
Former-commit-id: 7ee766aee13f501923afc127a74c79b29c0b0aa2
2021-05-26 17:29:47 +00:00
John Sully
96622e82f5
Avoid differences between single thread and multi-thread
...
Former-commit-id: 848c5ad784d6437533f6c86663b81e41e06a11ea
2021-05-26 17:29:01 +00:00
malavan
d6fbca3794
fix leak caused by dict entry not being added to GCList
...
Former-commit-id: d8c1b3b6ec64f63fdff04d53102e4563c2c6764a
2021-05-26 17:01:51 +00:00
John Sully
551edf9443
Eliminate test issue while clients wait for async free
...
Former-commit-id: a41fb1b036dd4a933093f1df6dffe16f820153e4
2021-05-26 01:18:47 +00:00
John Sully
7cdbd48e7a
Fix failure sending deferred aggregate lengths to clients on other threads (merge bug)
...
Former-commit-id: 915117ae7bac90fe41c7f36d97bcd654d6e90b62
2021-05-25 20:51:18 +00:00
John Sully
070ea24010
Remove duplicate code
...
Former-commit-id: de5fa787625ae27ce16737b539a981a0dede091a
2021-05-25 20:50:40 +00:00
John Sully
e75e080e7e
Fix TLS test failure due to tls-port not marked as runtime configurable
...
Former-commit-id: b0c8efd8407168d1d5435f417932323656efe109
2021-05-25 20:50:23 +00:00
John Sully
e69b6d89e6
Fix crash in TLS due to merge
...
Former-commit-id: 1dcd5edbf953b74c9186672f8f157c6bd56bcdf8
2021-05-25 18:52:27 +00:00
John Sully
01d0145ed9
Build break fix: Remove dependency on future C++ feature
...
Former-commit-id: 87d7fc8e5d78a996562c477ecc0833c63f6fd8d7
2021-05-25 18:52:08 +00:00
John Sully
87add83a32
More OS X build breaks
...
Former-commit-id: 100a747eabf42bccbcf2991349be0fb3810799b6
2021-05-25 18:35:45 +00:00
John Sully
ddd0ae9daf
OS X build break fix
...
Former-commit-id: 105fd03ef8cd810e67c01e4d5a3ea7816e215a99
2021-05-25 18:32:31 +00:00
John Sully
209f6ed49c
Fix uninitialized variable
...
Former-commit-id: 9395a9c1d90859f88f3d82d66e50083c8409a3f8
2021-05-25 18:30:07 +00:00
John Sully
98b366af04
Fix duplicate checks (resolve PR comments)
...
Former-commit-id: 02f7efd9d4804b71765ae11d7fcf7adca46af750
2021-05-25 16:57:49 +00:00
John Sully
caba5639f4
Fix TLS Build Errors
...
Former-commit-id: aea86c5977c01debb4f4a4340c866aa5c5f20f04
2021-05-25 16:55:59 +00:00
VivekSainiEQ
61fca72389
Fixed single threaded for real this time, need to add synchronization for multi threaded
...
Former-commit-id: 4d858dac1a503f4d518477212ba585069af22574
2021-05-21 17:05:55 +00:00
John Sully
5267928381
Merge tag '6.2.2' into unstable
...
Former-commit-id: 93ebb31b17adec5d406d2e30a5b9ea71c07fce5c
2021-05-21 05:54:39 +00:00
John Sully
fe8efa916b
Merge tag '6.2.1' into unstable
...
Former-commit-id: bfed57e3e0edaa724b9d060a6bb8edc5a6de65fa
2021-05-19 02:59:48 +00:00
John Sully
61e054f826
Fix test hang
...
Former-commit-id: 23647390e628de07759f8e7d8768a7f638edf01d
2021-05-07 00:28:10 +00:00
VivekSainiEQ
7b982ae4c5
Changed branding in various locations
...
Former-commit-id: 96bca72bb4528a0789354ee4fd6bf3ab66d82bf7
2021-05-06 20:13:45 -04:00
VivekSainiEQ
6e5c8246cc
Fixed data race? Seems to be passing multithreaded test cases now
...
Former-commit-id: cb13edd1200c1230fa7e313d69c69e06129951d3
2021-05-05 22:26:36 +00:00
VivekSainiEQ
6da7989518
Updated overhead calculation to only use repl_backlog_size
...
Former-commit-id: 6f93c7eb44d84bb143b4ad4fff3c6a5436ebaaf7
2021-05-05 17:04:08 +00:00
John Sully
f41b79cea6
Merge branch 'keydbpro' into keydbpro_collab
...
Former-commit-id: 446daf8f4c33005096372ad9e29ae9b3d465c64e
2021-05-03 22:58:56 +00:00
jsully
fe9f276f95
Merge branch 'cluster_bugfix' into 'keydbpro'
...
Set repl_down_since in freeClientAsync
See merge request keydb-dev/KeyDB-Pro!12
Former-commit-id: bd7591fe50b1e5565da2fa521438b88058d4da07
2021-05-03 21:41:05 +00:00
christian
12044bab09
Set repl_down_since in freeClientAsync
...
Former-commit-id: fb4bd2984651837fadd1dbbbb56327e8452b4a2a
2021-05-03 21:41:04 +00:00
VivekSainiEQ
546bef8be3
Forgot to add server.h in last commit
...
Former-commit-id: 34fa6119c9a3f1533cc3e6e5d118dc6424a70891
2021-05-03 16:49:09 +00:00
John Sully
c83c3f1f8e
Respect replica output buffer limits when adding large commands to the ring buffer
...
Former-commit-id: 37ec01cfd8a8da1e895c7cdc358d382d35ad59dd
2021-05-03 16:33:16 +00:00
VivekSainiEQ
10a8a56890
Now tracks memory and resizes 'accurately', need to fix cluster
...
Former-commit-id: 5f0e01cc199427ab6dfd7f8f28321f6a1f34fd1c
2021-05-03 16:29:11 +00:00
VivekSainiEQ
f0728a7ead
Performance optimizations
...
Former-commit-id: 7fd83d467784d293f7da78b74f9b9763ce387238
2021-04-29 18:51:30 +00:00
VivekSainiEQ
089cbfa580
Updated resize logic
...
Former-commit-id: e6d892ef21b7fc6f51433f32b01198038e555419
2021-04-29 17:01:06 +00:00
VivekSainiEQ
5dfac7172f
Primitive implementation of bypassing client buffer, stats are all messed up and print statements everywhere
...
Former-commit-id: 8ae310fb0f7b53add826f76891da333b63860001
2021-04-26 22:13:32 +00:00
John Sully
0c7589580d
Optimize freeMemory by lazy freeing objects
...
Former-commit-id: cca31ed5ee2f42975f0051cfabf1e88720b3d678
2021-04-21 01:20:13 +00:00
John Sully
0adcb82652
Better RocksDB perf tuning
...
Former-commit-id: cbe1e0a7c1b5dc49c1adff07b7c32042e673acf4
2021-04-21 01:19:44 +00:00
John Sully
da1360383c
Fix issue where we reply a dangling pointer
...
Former-commit-id: fd11e490c39fe876d979eace5eaec56c645cdfcf
2021-04-21 01:19:29 +00:00
John Sully
0441c4c1fa
_dictExpandIfNeeded is called too late to be useful
...
Former-commit-id: 7f75ca5d3a9ed47465bceb22f5f74fd6f0760008
2021-04-21 01:18:38 +00:00
Oran Agra
aa730ef1ea
Redis 6.2.2
2021-04-19 21:39:40 +03:00
Oran Agra
f5ca1f9ee9
Merge unstable into 6.2
2021-04-19 21:36:00 +03:00
Viktor Söderqvist
61d3fdb474
Fix space included in links in modules API doc ( #8818 )
2021-04-19 21:35:14 +03:00
Hanna Fadida
53a4d6c3b1
Modules: adding a module type for key space notification ( #8759 )
...
Adding a new type mask for key space notification, REDISMODULE_NOTIFY_MODULE, to enable unique notifications from commands on REDISMODULE_KEYTYPE_MODULE type keys (which is currently unsupported).
Modules can subscribe to a module key keyspace notification by RM_SubscribeToKeyspaceEvents,
and clients by notify-keyspace-events of redis.conf or via the CONFIG SET, with the characters 'd' or 'A'
(REDISMODULE_NOTIFY_MODULE type mask is part of the '**A**ll' notation for key space notifications).
Refactor: move some pubsub test infra from pubsub.tcl to util.tcl to be re-used by other tests.
2021-04-19 21:33:26 +03:00
guybe7
f40ca9cb58
Modules: Replicate lazy-expire even if replication is not allowed ( #8816 )
...
Before this commit using RM_Call without "!" could cause the master
to lazy-expire a key (delete it) but without replicating to replicas.
This could cause the replica's memory usage to gradually grow and
could also cause consistency issues if the master and replica have
a clock diff.
This bug was introduced in #8617
Added a test which demonstrates that scenario.
2021-04-19 17:16:02 +03:00
Harkrishn Patro
7a3d1487e4
ACL channels permission handling for save/load scenario. ( #8794 )
...
In the initial release of Redis 6.2 setting a user to only allow pubsub access to
a specific channel, and doing ACL SAVE, resulted in an assertion when
ACL LOAD was used. This was later changed by #8723 (not yet released),
but still not properly resolved (now it errors instead of crash).
The problem is that the server that generates an ACL file, doesn't know what
would be the setting of the acl-pubsub-default config in the server that will load it.
so ACL SAVE needs to always start with resetchannels directive.
This should still be compatible with old acl files (from redis 6.0), and ones from earlier
versions of 6.2 that didn't mess with channels.
Co-authored-by: Harkrishn Patro <harkrisp@amazon.com>
Co-authored-by: Oran Agra <oran@redislabs.com>
2021-04-19 13:27:44 +03:00
Wen Hui
0413fbc7d0
fix invalid master_link_down_since_seconds in info repication ( #8785 )
...
When replica never successfully connect to master, server.repl_down_since
will be initialized to 0, therefore, the info master_link_down_since_seconds
was showing the current unix timestamp, which does not make much sense.
This commit fixes the issue by showing master_link_down_since_seconds to -1.
means the replica never connect to master before.
This commit also resets this variable back to 0 when a replica is turned into
a master, so that it'll behave the same if the master is later turned into a
replica again.
The implication of this change is that if some app is checking if the value is > 60
do something, like conclude the replica is stale, this could case harm (changing
a big positive number with a small one).
2021-04-19 09:34:21 +03:00