556 Commits

Author SHA1 Message Date
John Sully
d6cf39c485 Merge branch 'main' into keydbpro 2022-06-05 19:33:49 +00:00
John Sully
84b37edfcf Implements the soft shutdown feature to allow clients to cooperatively disconnect preventing disruption during shutdown 2022-05-24 03:04:57 +00:00
John Sully
ea4941a3e7 Fix crash in expire when a snapshot is in flight. Caused by a perf optimization getting the expire map out of sync with the val 2022-05-20 13:07:26 -04:00
John Sully
a265f815e2 Merge OSS back into pro 2022-05-18 01:29:15 +00:00
John Sully
ba1275f653 Fix TSAN warnings on the repl backlog 2022-05-17 15:37:22 -04:00
John Sully
8405c99017 Add fence barriers for the repl backlog (important for AARCH64 and other weak memory models) 2022-05-17 15:37:22 -04:00
Vivek Saini
3724cf97d9 Merge pull request #60 from Snapchat/merge_os_apr_13
Merge in changes from Open Source.

For the most part, this encompasses two changes:

- Adding partial sync capabilities to multi-master
- Adding ReadWrite locks to prevent global lock issues when forking threads, specifically with regards to the time thread.
2022-05-02 13:26:21 -04:00
Vivek Saini
faf9359e10 Merge pull request #60 from Snapchat/merge_os_apr_13
Merge in changes from Open Source.

For the most part, this encompasses two changes:

- Adding partial sync capabilities to multi-master
- Adding ReadWrite locks to prevent global lock issues when forking threads, specifically with regards to the time thread.
2022-05-02 13:26:21 -04:00
John Sully
05dc5a470e With TLS throttle accepts if server is under heavy load - do not change non TLS behavior 2022-04-18 23:07:36 +00:00
John Sully
0c3fd61928 With TLS throttle accepts if server is under heavy load - do not change non TLS behavior 2022-04-18 23:07:36 +00:00
John Sully
63e78ab7f3 Make active client balancing a configurable option 2022-04-18 23:07:15 +00:00
John Sully
95c0146ec9 Make active client balancing a configurable option 2022-04-18 23:07:15 +00:00
Malavan Sotheeswaran
2f9b429071 remove unused var in networking.cpp 2022-04-13 14:08:43 -04:00
Malavan Sotheeswaran
b73ece90f5 remove unused var in networking.cpp 2022-04-13 14:08:43 -04:00
Malavan Sotheeswaran
6dcd4ca0fc hide forklock object in ae 2022-04-13 14:04:02 -04:00
Malavan Sotheeswaran
09c1b0d5fc hide forklock object in ae 2022-04-13 14:04:02 -04:00
malavan
0ee3a5ace1 fork lock for all threads, use fastlock for readwritelock 2022-04-13 13:52:41 -04:00
malavan
53c89372aa fork lock for all threads, use fastlock for readwritelock 2022-04-13 13:52:41 -04:00
John Sully
cb4d9401ae Improve connect performance by reducing lock contention, I'm seeing 50-100% improvements 2022-04-13 12:51:00 -04:00
John Sully
750a7fdb16 Improve connect performance by reducing lock contention, I'm seeing 50-100% improvements 2022-04-13 12:51:00 -04:00
John Sully
55dbb698e7 SSL connections are expensive, do not do them overly frequently 2022-04-13 12:51:00 -04:00
John Sully
7ef5e9cd2a SSL connections are expensive, do not do them overly frequently 2022-04-13 12:51:00 -04:00
John Sully
8eaede1c61 Fix lock inversion in freeClientAsync - make it not dependent on the AE Lock 2022-03-29 00:19:49 -04:00
John Sully
f077a6060c Fix lock inversion in freeClientAsync - make it not dependent on the AE Lock 2022-03-29 00:19:49 -04:00
John Sully
f73ce412c8 Fix mac build warnings 2022-03-07 19:28:39 -05:00
John Sully
b787828ef9 Fix mac build warnings 2022-03-07 19:28:39 -05:00
John Sully
4697923f41 Optimize async command snapshot creation, and make slip configurable 2022-03-07 16:00:48 -05:00
John Sully
003c9289e0 Optimize async command snapshot creation, and make slip configurable 2022-03-07 16:00:48 -05:00
John Sully
0d917c8580 Fix mac build breaks and remove license checks (won't work on mac) 2022-03-07 14:50:31 -05:00
John Sully
d77bbee238 Fix mac build breaks and remove license checks (won't work on mac) 2022-03-07 14:50:31 -05:00
christianEQ
df51a33413 Merge remote-tracking branch 'opensource/RELEASE_6' into keydbpro
Former-commit-id: 439c655a543f4d3224d90bcdeb21ba43c2ab8ab7
2022-01-14 22:19:42 +00:00
christianEQ
b785b03068 Merge remote-tracking branch 'opensource/RELEASE_6' into keydbpro
Former-commit-id: 439c655a543f4d3224d90bcdeb21ba43c2ab8ab7
2022-01-14 22:19:42 +00:00
MalavanEQAlpha
4e2e461acc Merge pull request #386 from EQ-Alpha/fix_rdb_hang
add readwrite lock for forking

Former-commit-id: dabb81960f6ccc7f62c53648127924fc2fef7cdc
2022-01-14 13:19:33 -08:00
MalavanEQAlpha
0f4268579e Merge pull request #386 from EQ-Alpha/fix_rdb_hang
add readwrite lock for forking

Former-commit-id: dabb81960f6ccc7f62c53648127924fc2fef7cdc
2022-01-14 13:19:33 -08:00
christianEQ
6122cce93b Merge branch 'unstable' into RELEASE_6
Former-commit-id: e69f1023a96e0da8880be4afb3107c3d8b6b9a75
2022-01-10 23:54:30 +00:00
christianEQ
2e2eae7931 Merge branch 'unstable' into RELEASE_6
Former-commit-id: e69f1023a96e0da8880be4afb3107c3d8b6b9a75
2022-01-10 23:54:30 +00:00
John Sully
b38157b581 Fix deadlock issue #183 cause by lock inversion
Former-commit-id: e070651039975ad1d5be4a5f7cbb28eeefcb0015
2021-12-23 13:17:14 -05:00
John Sully
9415fe7e1c Fix deadlock issue #183 cause by lock inversion
Former-commit-id: e070651039975ad1d5be4a5f7cbb28eeefcb0015
2021-12-23 13:17:14 -05:00
VivekSainiEQ
45e7b87548 Merge remote-tracking branch 'mainpro/PRO_RELEASE_6' into keydbpro
Former-commit-id: 5a32d66ee382b6d227a67073afc81ca058d605ed
2021-12-06 20:43:23 +00:00
VivekSainiEQ
bfcea943ea Merge remote-tracking branch 'mainpro/PRO_RELEASE_6' into keydbpro
Former-commit-id: 5a32d66ee382b6d227a67073afc81ca058d605ed
2021-12-06 20:43:23 +00:00
Malavan Sotheeswaran
6d8fe4ae50 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
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
54f3436250 Merge branch 'keydbpro' into async_commands
Former-commit-id: 9eaddb8ca1424ff3225dac9c144d23848228c7d2
2021-11-30 11:47:51 -05:00
Malavan Sotheeswaran
250e5b39a7 Merge branch 'keydbpro' into async_commands
Former-commit-id: 9eaddb8ca1424ff3225dac9c144d23848228c7d2
2021-11-30 11:47:51 -05:00
VivekSainiEQ
147abcb3bc Merge branch 'unstable' into RELEASE_6
Former-commit-id: b0b81c60d9a8457c8840b4424b18fa4851907b22
2021-11-15 18:08:01 +00:00
VivekSainiEQ
50878482d1 Merge branch 'unstable' into RELEASE_6
Former-commit-id: b0b81c60d9a8457c8840b4424b18fa4851907b22
2021-11-15 18:08:01 +00:00
Vivek Saini
440c637c6c Merge pull request #375 from VivekSainiEQ/time_thread_backport
Backport the time thread code from the enterprise version of KeyDB.

Also fix an issue with clustering where connections are potentially written to after being closed.

Former-commit-id: 4b6bdcbccef3c4c93d85c62281b266e452912bac
2021-11-15 12:57:15 -05:00
Vivek Saini
2c6548213e Merge pull request #375 from VivekSainiEQ/time_thread_backport
Backport the time thread code from the enterprise version of KeyDB.

Also fix an issue with clustering where connections are potentially written to after being closed.

Former-commit-id: 4b6bdcbccef3c4c93d85c62281b266e452912bac
2021-11-15 12:57:15 -05:00
VivekSainiEQ
7992428583 Merge remote-tracking branch 'opensource/unstable' into PRO_RELEASE_6
Former-commit-id: 60da86471f68b13e2456e113ecd4aa117d95b134
2021-11-12 21:12:53 +00:00
VivekSainiEQ
f9a355900a Merge remote-tracking branch 'opensource/unstable' into PRO_RELEASE_6
Former-commit-id: 60da86471f68b13e2456e113ecd4aa117d95b134
2021-11-12 21:12:53 +00:00