9116 Commits

Author SHA1 Message Date
John Sully
e6a82692b7 Avoid holding the lockPendingWrite for too long and deadlocking due to lock inversion
Former-commit-id: a4b49fbec60e2333a4407d24383ae204d5d2b413
2021-06-25 02:31:17 +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
90a6fef48b Merge remote-tracking branch 'origin/keydbpro' into repl_backlog_rework
Former-commit-id: e9bfcef5429c747fd9f26a829fed2281c5ec2b25
2021-06-16 16:40:06 +00:00
Ubuntu
6a65b8bbaa Optimized use of repl_lowest_off to reduce lock contention
Former-commit-id: 30a957e5399fe94675f0b6d2d34c24112d5a9734
2021-06-15 23:13:49 +00:00
Ubuntu
80dddab0c4 Relaxed locking, should run faster now
Former-commit-id: 5cec4d026dc1766b9ecbade6ec4b9d0e75a94e0f
2021-06-14 19:30:49 +00:00
John Sully
3ca4e0b4f9 Free objects immediately before adding to the GC list, this cuts down on mem consumption
Former-commit-id: 49d718ae9c1c8a850df5ffa2c550df3381ad7174
2021-06-14 04:06:34 +00:00
John Sully
dcffe221ce Remove lock
Former-commit-id: bb8efe2ed942fd67d091b16bb27f67ccefcbbf19
2021-06-14 03:50:47 +00:00
John Sully
c0d1586f9a Merge branch 'keydbpro' of https://gitlab.eqalpha.com/keydb-dev/KeyDB-Pro into keydbpro
Former-commit-id: 0f1b891c15ac27c4ad8a63a798c7dfa9fdcd2e01
2021-06-14 03:14:15 +00:00
jsully
386f6c649f Merge branch 'merge_6.2.2' into 'keydbpro'
Merge 6.2.2

See merge request keydb-dev/KeyDB-Pro!21

Former-commit-id: c1076b2311e8bc1217b7f5030f5f5ebea1e98215
2021-06-14 03:14:03 +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
2e9c7aed03 Single threaded tests work now
Former-commit-id: 0e760d7c71231c7f52102909a31fc8db1b3e2860
2021-06-03 20:44:32 +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
d93360b96b Merge branch 'keydbpro' of https://gitlab.eqalpha.com/keydb-dev/KeyDB-Pro into keydbpro
Former-commit-id: 6eb1417295ecc6ce23677e9a8e1c756579177629
2021-06-02 02:11:29 +00:00
John Sully
368441127f Fix merge issue with wrong return type
Former-commit-id: 1640a2fefb8f09c7b6b335838f14a7fd3a51ae88
2021-06-02 02:10:00 +00:00
John Sully
18a2b27ef9 Merge branch 'unstable' into keydbpro
Former-commit-id: 657789db5c3bd0fbbfc15be150d6eb525554251c
2021-06-02 02:08:18 +00:00
jsully
3859bea711 Merge branch 'fixleakindictdelete' into 'keydbpro'
fix leak caused by dict entry not being added to GCList

See merge request keydb-dev/KeyDB-Pro!20

Former-commit-id: 92c8c6d854c3029269f695d0f9e4afe80c1e48f6
2021-06-02 00:01:52 +00:00
John Sully
ceb98b062c Initial bulkInsert implementation
Former-commit-id: 2a721d4dff3c9f78ec4ba1c7b490ea1f5d216a89
2021-06-01 19:15:01 +00:00
John Sully
4c88843720 Eliminate unnecessary global locks
Former-commit-id: 8f924ed0979f3cf7cd290395d1b1eec358979325
2021-05-31 01:14:28 +00:00
John Sully
5d525a8830 Fix deadlock in async work queue
Former-commit-id: 3265f2908e8d3aa567b3b9e6b141a7881c795053
2021-05-31 01:14:11 +00:00
John Sully
0bb036aebb Don't pass on flags indicating membership in a list
Former-commit-id: b1f662d6393eea77c2870c8a1f955374b1a3b57f
2021-05-30 05:11:18 +00:00
John Sully
702bfaee9b Merge branch 'unstable' into keydbpro
Former-commit-id: 4fd95b064648ee3d02097a1c2dabf306978b44f9
2021-05-30 04:28:09 +00:00
John Sully
6331caca6a Fix a leak in the benchmark
Former-commit-id: aa5b27b040c69f0c7d166203bed7110bc8c0bc87
2021-05-30 02:55:39 +00:00
John Sully
42f5d1a175 Ensure our connections are touched only on the right thread
Former-commit-id: e8a44821d016e9f9b8ca873757d4786c4c271b7c
2021-05-30 02:08:30 +00:00
John Sully
1a734223ca Handle race where a different thread cancels the replication but we haven't closed the connection
Former-commit-id: 92e48f071792985c2fb7f4c722329e832cd4c77b
2021-05-30 02:08:02 +00:00
John Sully
f1ba462df6 Delete pipe on the right thread so event handlers are cleaned up
Former-commit-id: 9742c44db52929b755d6ecce16f91bee07f495ff
2021-05-30 02:07:31 +00:00
John Sully
f82860104e Don't leave dangling client pointers in the process list
Former-commit-id: 5d16f519508fcb96a8803fcefa69d6c75fa174ac
2021-05-30 02:06:47 +00:00
John Sully
06560f9f85 Don't leak AE control pipes to fork children
Former-commit-id: 1ed2e8b5bcb485f7d1e073545a190bb95405a7d6
2021-05-30 02:06:20 +00:00
John Sully
989799df85 Merge branch 'unstable' into keydbpro
Former-commit-id: 14c24ce161ddcbddb701a20062659261397cb0e4
2021-05-29 06:49:05 +00:00
John Sully
1b29ba5873 Mac build break fixes
Former-commit-id: 083b54472c65239b03c8a17f6b1ae6447d273e9a
2021-05-28 22:40:03 -04:00
John Sully
4e70e85ab8 Fix failover command test failures
Former-commit-id: d3c37c7159a92319759a33851669862a82cf1b28
2021-05-29 01:19:12 +00:00
John Sully
f6067d1664 Remove dup'd code from merge
Former-commit-id: 807f0201845a698514f1ce9382338bc74ba57e5e
2021-05-29 01:08:52 +00:00
John Sully
bf77b1a03a ProcessingEventsWhileBlocked is relevant only to the current thread
Former-commit-id: b400be68b7a45e73ea851c11dfee3fdcbacb4794
2021-05-29 01:08:43 +00:00
John Sully
1d0378e0dc Make processClients reentrant
Former-commit-id: e39bdb58ec28d80c5ed2cf15ef6bc7b884e14d4b
2021-05-29 01:08:14 +00:00
John Sully
589e95e0c8 Don't have dangling expires
Former-commit-id: 83c8977033d79b6ec69e677dff19f68df53535be
2021-05-29 01:07:46 +00:00
John Sully
007f276a43 Repair async rehash code removed by merge
Former-commit-id: 14a3ab8133c474bf8f1ad636c8699d5d59c5394e
2021-05-29 00:24:46 +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
d414b5ee60 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
c091050d4a Avoid differences between single thread and multi-thread
Former-commit-id: 848c5ad784d6437533f6c86663b81e41e06a11ea
2021-05-26 17:29:01 +00:00
malavan
5043fb4091 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
b94b46a5ee Eliminate test issue while clients wait for async free
Former-commit-id: a41fb1b036dd4a933093f1df6dffe16f820153e4
2021-05-26 01:18:47 +00:00
John Sully
02211afea8 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
f6de98779f Remove duplicate code
Former-commit-id: de5fa787625ae27ce16737b539a981a0dede091a
2021-05-25 20:50:40 +00:00
John Sully
84b8e80841 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
9939c0ac5c Fix crash in TLS due to merge
Former-commit-id: 1dcd5edbf953b74c9186672f8f157c6bd56bcdf8
2021-05-25 18:52:27 +00:00