1274 Commits

Author SHA1 Message Date
Malavan Sotheeswaran
ac1775b8a6 Merge branch 'async_commands' of https://gitlab.eqalpha.com/external-collab/keydb-pro-6 into async_commands
Former-commit-id: 1afa51c4d21d695c052dbec690bf3880b243dbec
2021-11-30 12:17:46 -05:00
Malavan Sotheeswaran
250e5b39a7 Merge branch 'keydbpro' into async_commands
Former-commit-id: 9eaddb8ca1424ff3225dac9c144d23848228c7d2
2021-11-30 11:47:51 -05:00
Malavan Sotheeswaran
9afbac8a83 Merge branch 'fastsync_collab' into 'keydbpro'
Fastsync collab

See merge request external-collab/keydb-pro-6!9

Former-commit-id: 8f410e4b814ea6ac506ab540ee1394834fd1d8a8
2021-11-26 20:53:00 +00:00
John Sully
2ed6d3f03a Implement the disk backed backlog functionality
Former-commit-id: 759cc01c6ba05f9a865c11580cc4975b5f1bd1d6
2021-11-26 03:05:23 +00:00
christianEQ
c195ee4453 added createMetadataDb to IStorageFactory + implementations
Former-commit-id: a2acf75484d2af93aad9d03a20bd402893044860
2021-11-11 13:41:00 +00:00
John Sully
1ebf62da26 Initial implementation of snapshot fast replication. There are still a few TODOs in progress
Former-commit-id: 0febdcdab8693af443f350968ed3d8c80106675d
2021-11-09 19:36:07 +00:00
malavan
4bb05e4685 Merge branch 'keydbpro' of https://gitlab.eqalpha.com/external-collab/keydb-pro-6 into keydbpro
Former-commit-id: 5b88af1067d344f121b2d65e34fb40e229722575
2021-11-02 19:14:47 +00:00
malavan
519ba51343 don't delete db or snapshots on shutdown, still delete storage provider
Former-commit-id: edb840ce10ea77ce654ba27c9eadbf98bbc13403
2021-11-02 19:01:37 +00:00
John Sully
bdff0121eb Make the replica weighting configurable
Former-commit-id: be6a8a7e68acb5cfbe950f13b903e6f7b98c5a39
2021-10-29 17:59:46 +00:00
John Sully
b4eda0ef34 Fix slower performance during replication by better balancing client load on threads servicing a replica
Former-commit-id: 496f91d3f169fcfe6d94c2ea69cee402f8eb60ca
2021-10-22 03:16:33 +00:00
jsully
5e4dec1a16 Merge branch 'multithread_load' into 'keydbpro'
Multithread load

See merge request external-collab/keydb-pro-6!5

Former-commit-id: 20e712244071028b0f75ccad477308efd139261f
2021-10-08 17:55:55 +00:00
John Sully
db351b697a Handle the case where the key cache exceeds maxmemory
Former-commit-id: 01febf902267fec7fe87e6437b0b81fd08b50963
2021-10-04 07:34:05 +00:00
John Sully
4650e051bd Use the concurrentqueue for multithread load instead of mutex and cvs
Former-commit-id: d5a59113dbfedaf7b62a650cff58a2e8ec01826f
2021-10-04 07:33:03 +00:00
jsully
7cf8433745 Merge branch 'improve_overwrite_performance' into 'keydbpro'
Improve overwrite performance

See merge request external-collab/keydb-pro-6!4

Former-commit-id: 7e59e889f28e30fca409dfb951c31f8cb47effbd
2021-09-28 18:13:12 +00:00
John Sully
617519e021 Revert "Don't zero out potentially long buffers" - It has no benefit above the noise floor and potentially is the cause of a multithread slowdown
This reverts commit 711c08c62491d0670b329fa7760c6938689910f1 [formerly 91e76ab4a00546278100baf6dfe61c13e802b40e].


Former-commit-id: f651cf67d731a10c3a52e30261c8d8b9d291576c
2021-09-28 18:08:15 +00:00
malavan
d502437cf3 Merge branch 'async_commands' of https://gitlab.eqalpha.com/keydb-dev/KeyDB-Pro into async_commands
Former-commit-id: a19112ec839da4684aeb1a9d1b41906f4c698944
2021-09-23 17:48:33 +00:00
John Sully
154c9d1f79 Rework the tuning to be better for mixed read/write workloads
Former-commit-id: a4fdd3e3cb41160b20e92e1b1f4f4ebd2ee86a4a
2021-09-23 17:46:56 +00:00
John Sully
3294e4f788 Move the snapshot stale threshold to a named constant
Former-commit-id: 46d2aaf17abb0fb021aa6d7b393ffc143493d339
2021-09-23 17:45:49 +00:00
malavan
4297a3fb32 prev_error_count needs to be thread local
Former-commit-id: 4abede1c40db1dfb4235b9aa1e3177678c5304b1
2021-09-23 17:41:28 +00:00
John Sully
af1c51dc53 Make async commands runtime configurable
Former-commit-id: 23bafb5f7c3c9805581f4bf09d9d5136898c2883
2021-09-21 20:49:44 +00:00
John Sully
59855278e0 Initial implementation of async commands
Former-commit-id: 0d3a4ce7e60c42b2d81962f13100bd1789bf64a8
2021-09-21 20:43:16 +00:00
malavan
51fe42b10e improve overwrite key performance
Former-commit-id: 56f9d5528385ea78074a308c6d3987b920d6cc35
2021-09-14 17:06:04 +00:00
John Sully
711c08c624 Don't zero out potentially long buffers
Former-commit-id: 91e76ab4a00546278100baf6dfe61c13e802b40e
2021-09-10 00:40:08 +00:00
John Sully
5eda1c5b42 Don't zero out potentially long buffers
Former-commit-id: 99eb47e129a3cd555914d4816febb02f0058253a
2021-09-10 00:38:49 +00:00
jsully
91ec5dffa2 Merge branch 'async_mget' into 'keydbpro'
add async mget

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

Former-commit-id: e315b39f4779d530f5ab93e1f15915211e6706e2
2021-09-08 19:08:23 +00:00
malavan
26aa8f0828 updates from comments
Former-commit-id: 852885f09e7df1d9570408546baffa8545707335
2021-09-01 21:00:27 +00:00
malavan
3239f678d5 refactor asyncCommand
Former-commit-id: 6af5775e01872f130bc18791fdb4c0b22507b37f
2021-09-01 20:18:41 +00:00
John Sully
40d5a2db44 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
malavan
ee879d04ee add method to get client args as list
Former-commit-id: 576b8cd2153c48c0ca4dfc9ed7d12f77d6f76f7e
2021-08-30 21:09:22 +00:00
malavan
59ba007812 add stats for storage provider reads
Former-commit-id: 612393ffba43cda31443605de924dc8dcf77ef52
2021-08-26 19:45:33 +00:00
malavan
d658891bf0 refactor of asyncCommand to include snapshot creation
Former-commit-id: c0908362162b5f2834b90cd9ce84fd1ee6768834
2021-08-26 13:10:59 +00:00
malavan
65a29f9322 refactor async to offload common code to client
Former-commit-id: 9a7547bfaa0ceff76e604262913fb11a64c627d8
2021-08-25 20:06:06 +00:00
malavan
67ffa578d7 Merge remote-tracking branch 'opensource/unstable' into keydbpro
Former-commit-id: cf40fa5da29ba9574d20d706d0a41ca7001df95a
2021-08-11 20:41:54 +00:00
VivekSainiEQ
2598493a62 Prevent invalid mvcc timestamps from causing critical errors
Former-commit-id: 6f2dbb00119b1d0a1f5a2543d2c6af05f83ef5de
2021-08-11 15:06:14 -04:00
John Sully
a560bcc4a2 Merge branch 'keydbpro_collab' into multithread_load
Former-commit-id: 8016c20f1f9a648e658c816e2f6777c5718d5e19
2021-08-09 20:20:34 +00:00
Christian Legge
9e562f1fe5 Add REPLPING command for use during replication (#329)
* added replping command for initiating replication

* backwards compatibility for replping (retry if not recognized)

* don't allow ping during loading (load balancer fix)

* changed replping warning to notice

Former-commit-id: d7f6bc16145206e96ffeb9941398d564c3dba6a9
2021-07-29 15:50:30 -04:00
John Sully
73560dc7b2 Initialize el so we can detect if it is null
Former-commit-id: ec0f833ea17c668971893aa8f198d22da2e1d289
2021-07-23 19:31:22 +00:00
John Sully
26750791b3 Merge branch 'keydbpro' into keydbpro_collab
Former-commit-id: e4e5c6696c6d831924f314a198b266b10d831e14
2021-07-19 20:51:27 +00:00
John Sully
fc7221739c 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
29ef9708fa 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
ca920fed38 Merge branch 'keydbpro' into keydbpro_collab
Former-commit-id: 8eec3e948ffd204bb2d6170ad3ca42fa8a2c6d8b
2021-07-09 05:25:04 +00:00
John Sully
6bb2075d3c Merge branch 'unstable' into keydbpro
Former-commit-id: 81ded8a35daa5100cac7299a7d0b5f43ee7ac74f
2021-07-09 04:41:47 +00:00
John Sully
da2aceabcf Merge tag '6.2.3' into unstable
Former-commit-id: 1895dbb7680fa9aadf6040912e89c733abc8c706
2021-07-09 04:40:31 +00:00
John Sully
46c1969997 Merge branch 'repl_backlog_rework' into keydbpro_collab
Former-commit-id: 0983e195757d92d6cbcb63436a1332a6b80e275c
2021-06-30 06:36:45 +00:00
John Sully
d55bcf23bd Merge branch 'keydbpro' into keydbpro_collab
Former-commit-id: ecc69952dfd1f145e1aff12bca56a4b4e102d669
2021-06-25 06:21:58 +00:00
vivek
e68f9cfea1 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
53d7d09f07 Remove fPendingReplicaWrite flag which can instead be calculated on demand
Former-commit-id: ae26afd13f955eb230b5c2cab20ec90db9b714ad
2021-06-25 01:54:38 +00:00
VivekSainiEQ
4ac475ea20 More code cleanup
Former-commit-id: 8e9962b9b7b9093399451bf93d30e5b5d26e3d33
2021-06-16 19:41:55 +00:00
VivekSainiEQ
0b08909024 Merged in 6.2.2
Former-commit-id: 3fb9bb5b4fdfb8e09430c7bef6bf9421065adf0f
2021-06-10 20:11:14 +00:00
VivekSainiEQ
f7d8a0950d 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