John Sully
f3fb4e3209
Don't be in tracking mode during load as processChangesAsync works outside the normal system
...
Former-commit-id: 8d31ce6eafea1cea2f9f4ea25e44306efef28fa3
2021-09-01 04:15:28 +00:00
John Sully
c77ce968c5
Merge branch 'keydbpro_collab' into multithread_load
...
Former-commit-id: 8016c20f1f9a648e658c816e2f6777c5718d5e19
2021-08-09 20:20:34 +00:00
John Sully
a8685235c3
Initialize el so we can detect if it is null
...
Former-commit-id: ec0f833ea17c668971893aa8f198d22da2e1d289
2021-07-23 19:31:22 +00:00
John Sully
ea19d31df8
Merge branch 'keydbpro' into keydbpro_collab
...
Former-commit-id: e4e5c6696c6d831924f314a198b266b10d831e14
2021-07-19 20:51:27 +00:00
John Sully
d3793efb33
Info command should show how many keys are cached in RAM vs storage provider
...
Former-commit-id: 08597bee69bc16ca7c3d5ff31020472774c6eec9
2021-07-19 15:11:33 +00:00
John Sully
5f72ce9317
Return the ring buffer to its original size if we temporarily resized it
...
Former-commit-id: a12ce4a0d105bf7d6ccff95f7dc0044c4676b0a7
2021-07-18 20:45:32 +00:00
John Sully
d3d7c3a865
Merge branch 'keydbpro' into keydbpro_collab
...
Former-commit-id: 8eec3e948ffd204bb2d6170ad3ca42fa8a2c6d8b
2021-07-09 05:25:04 +00:00
John Sully
2616ed75cc
Merge branch 'unstable' into keydbpro
...
Former-commit-id: 81ded8a35daa5100cac7299a7d0b5f43ee7ac74f
2021-07-09 04:41:47 +00:00
John Sully
c0160a4415
Merge tag '6.2.3' into unstable
...
Former-commit-id: 1895dbb7680fa9aadf6040912e89c733abc8c706
2021-07-09 04:40:31 +00:00
John Sully
24a24dd082
Merge branch 'repl_backlog_rework' into keydbpro_collab
...
Former-commit-id: 0983e195757d92d6cbcb63436a1332a6b80e275c
2021-06-30 06:36:45 +00:00
John Sully
6ba0e699d4
Merge branch 'keydbpro' into keydbpro_collab
...
Former-commit-id: ecc69952dfd1f145e1aff12bca56a4b4e102d669
2021-06-25 06:21:58 +00:00
vivek
0e953fb916
Primitive implementation of bypassing client buffer, stats are all messed up and print statements everywhere
...
Former-commit-id: 59b2ae8ff451f8a5ac2f3baf3c7b509f6872895e
2021-06-25 03:10:56 +00:00
John Sully
815ebe1e6b
Remove fPendingReplicaWrite flag which can instead be calculated on demand
...
Former-commit-id: ae26afd13f955eb230b5c2cab20ec90db9b714ad
2021-06-25 01:54:38 +00:00
VivekSainiEQ
29f4c66179
More code cleanup
...
Former-commit-id: 8e9962b9b7b9093399451bf93d30e5b5d26e3d33
2021-06-16 19:41:55 +00:00
VivekSainiEQ
15f6acae11
Merged in 6.2.2
...
Former-commit-id: 3fb9bb5b4fdfb8e09430c7bef6bf9421065adf0f
2021-06-10 20:11:14 +00:00
VivekSainiEQ
9db8556e91
Cleaned up code a bit, need to rewrite some comments to reflect new behaviour
...
Former-commit-id: 850ec766cd71614ce9e61c12414545cd212d3878
2021-06-08 23:10:53 +00:00
VivekSainiEQ
da0b7a3900
Seems to pass multithreaded test cases, thank the lord
...
Former-commit-id: 6cbf70cfff5735f3d4ef2e980945b4b1a1f85971
2021-06-04 20:09:47 +00:00
VivekSainiEQ
667d2763c0
Removed unused variables
...
Former-commit-id: 48663bc480f7279a94c68aeebdd9721ca64f7038
2021-06-03 21:47:33 +00:00
VivekSainiEQ
2a6848a65a
Sync works single threaded properly, passes all but one testcase (which hangs)
...
Former-commit-id: 9a6ca3a5d906b9d87fe70652d218decbb2775ac1
2021-06-02 23:41:36 +00:00
John Sully
eef508736d
Merge branch 'keydbpro_collab' into multithread_load
...
Former-commit-id: b580a5561220bc6dc7bc073135f3045ba0cdda51
2021-06-02 04:24:49 +00:00
John Sully
833faf96c5
Merge branch 'merge_6.2.2' into keydbpro_collab
...
Former-commit-id: 54fe037e4e215b1e5bdb42b567c6df04a69ba150
2021-06-02 02:05:44 +00:00
John Sully
d0e69e4c47
Reduce lock contention when loading to a storage provider
...
Former-commit-id: 58bc777f2215918043325753b6e2bf89dc3108f7
2021-06-01 20:01:41 +00:00
John Sully
992d515b05
Merge remote-tracking branch 'collab/keydbpro' into multithread_load
...
Former-commit-id: a09454b3a4b295b2d04bdb7d742db7f9a3e17be7
2021-05-31 01:16:01 +00:00
John Sully
989799df85
Merge branch 'unstable' into keydbpro
...
Former-commit-id: 14c24ce161ddcbddb701a20062659261397cb0e4
2021-05-29 06:49:05 +00:00
John Sully
4e70e85ab8
Fix failover command test failures
...
Former-commit-id: d3c37c7159a92319759a33851669862a82cf1b28
2021-05-29 01:19:12 +00:00
John Sully
f4151f0d6b
Merge branch 'unstable' into keydbpro
...
Former-commit-id: 205d8f18d2bb8df5253bab40578b006b7aa73fd5
2021-05-28 23:32:46 +00:00
VivekSainiEQ
bf120245fa
Added more synchronization and fixed some data races
...
Former-commit-id: 183e015dac6f85df1c94d0761e89bc23d9f53319
2021-05-27 18:57:23 +00:00
VivekSainiEQ
6080ee8f2f
Added transmitted RDB lock
...
Former-commit-id: 4b32167afc85742d85ff9b47b2c2e0b6b02e140a
2021-05-26 20:10:33 +00:00
John Sully
87f706f8e7
Fix TLS Build Errors
...
Former-commit-id: aea86c5977c01debb4f4a4340c866aa5c5f20f04
2021-05-25 16:55:59 +00:00
John Sully
ea6a0f214b
Merge tag '6.2.2' into unstable
...
Former-commit-id: 93ebb31b17adec5d406d2e30a5b9ea71c07fce5c
2021-05-21 05:54:39 +00:00
John Sully
f49d8f9adb
Merge tag '6.2.1' into unstable
...
Former-commit-id: bfed57e3e0edaa724b9d060a6bb8edc5a6de65fa
2021-05-19 02:59:48 +00:00
John Sully
42f98c27e3
Fix test hang
...
Former-commit-id: 23647390e628de07759f8e7d8768a7f638edf01d
2021-05-07 00:28:10 +00:00
John Sully
40fdb3ce05
Add endurance testing to better detect threading bugs
...
Former-commit-id: 945e428aa110968479fdcdfc2d5c5308a99eadc3
2021-05-06 00:09:07 +00:00
John Sully
8e85eaf53e
Merge branch 'keydbpro' into keydbpro_collab
...
Former-commit-id: 446daf8f4c33005096372ad9e29ae9b3d465c64e
2021-05-03 22:58:56 +00:00
jsully
de6e9845d2
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
3d424defd5
Set repl_down_since in freeClientAsync
...
Former-commit-id: fb4bd2984651837fadd1dbbbb56327e8452b4a2a
2021-05-03 21:41:04 +00:00
zyxwvu Shi
7ac26c3497
Use monotonic clock to check for Lua script timeout. ( #8812 )
...
This prevents a case where NTP moves the system clock
forward resulting in a false detection of a busy script.
Signed-off-by: zyxwvu Shi <i@shiyc.cn>
(cherry picked from commit f61c37cec900ba391541f20f7655aad44a26bafc)
2021-05-03 22:57:00 +03:00
Madelyn Olson
3e97074649
Fix memory leak when doing lazyfreeing client tracking table ( #8822 )
...
Interior rax pointers were not being freed
(cherry picked from commit c73b4ddfd96d00ed0d0fde17953ce63d78bc3777)
2021-05-03 22:57:00 +03:00
VivekSainiEQ
33a7b52899
Forgot to add server.h in last commit
...
Former-commit-id: 34fa6119c9a3f1533cc3e6e5d118dc6424a70891
2021-05-03 16:49:09 +00:00
VivekSainiEQ
05fe41b33a
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
95ae92a691
Optimize freeMemory by lazy freeing objects
...
Former-commit-id: cca31ed5ee2f42975f0051cfabf1e88720b3d678
2021-04-21 01:20:13 +00:00
Hanna Fadida
6dc47733d0
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
0bf6c205db
Add a timeout mechanism for replicas stuck in fullsync ( #8762 )
...
Starting redis 6.0 (part of the TLS feature), diskless master uses pipe from the fork
child so that the parent is the one sending data to the replicas.
This mechanism has an issue in which a hung replica will cause the master to wait
for it to read the data sent to it forever, thus preventing the fork child from terminating
and preventing the creations of any other forks.
This PR adds a timeout mechanism, much like the ACK-based timeout,
we disconnect replicas that aren't reading the RDB file fast enough.
2021-04-15 17:18:51 +03:00
John Sully
92028ddb5c
Avoid posting unnecessary async tasks
...
Former-commit-id: 1661d2a05943f96992be195f5dc32dd9a67c0e68
2021-04-12 03:44:29 +00:00
John Sully
5793bb0c34
Don't prefetch when lock contention is low, it increases latency
...
Former-commit-id: 0d21614e0e5aba28acd364231823d51a3073081f
2021-04-12 03:41:53 +00:00
John Sully
aa64a260fc
Make prefetch configurable
...
Former-commit-id: 3b660347d70cc25d57119080bd43fb4671e36488
2021-04-12 03:38:57 +00:00
John Sully
5ccaa9265c
Don't prefetch when lock contention is low, it increases latency
...
Former-commit-id: 9b2629f6a20368cec8e55f0d006f3a67c8b770b7
2021-04-12 03:23:49 +00:00
Wang Yuan
8c5634f4eb
Fix wrong check for aof fsync and handle aof fsync errno ( #8751 )
...
The bio aof fsync fd may be closed by main thread (AOFRW done handler)
and even possibly reused for another socket, pipe, or file.
This can can an EBADF or EINVAL fsync error, which will lead to -MISCONF errors failing all writes.
We just ignore these errno because aof fsync did not really fail.
We handle errno when fsyncing aof in bio, so we could know the real reason
when users get -MISCONF Errors writing to the AOF file error
Issue created with #8419
2021-04-11 08:14:31 +03:00
John Sully
69f7a194bc
Make prefetch configurable
...
Former-commit-id: 16996c048042bd3799c8051645bbe7c54137d54c
2021-04-08 19:52:38 +00:00
John Sully
571718f774
Avoid posting unnecessary async tasks
...
Former-commit-id: 08f63fdfd6c78388bba093ec2edda7d77fc9173e
2021-04-07 17:41:20 +00:00