Commit Graph
14214 Commits
Author SHA1 Message Date
Malavan Sotheeswaran f80f4b2e24 need to include stdint for uintptr_t 2022-03-31 19:47:13 -07:00
Malavan Sotheeswaran 44206187a2 cannot mod a pointer 2022-03-31 18:55:12 -07:00
Malavan Sotheeswaran 34ac7488eb remove nullptr subtraction 2022-03-31 18:51:40 -07:00
Malavan Sotheeswaran 60cbb0f1d1 remove unused var in networking.cpp 2022-03-31 18:40:17 -07:00
John Sully ff580de3a2 Eliminate firewall dialogs on mac for regular and cluster tests. There are still issues with the sentinel tests but attempting to bind only to localhost causes failures 2022-03-08 18:20:03 -05:00
John Sully 4b3e23e2fb Fix module test break 2022-03-07 20:20:47 -05:00
John Sully 1f0679da36 Fix MALLOC=memkind build issues 2022-03-06 20:38:00 -05:00
benschermel 2ae3dd6b0a update README resource links 2022-03-06 15:42:48 -05:00
Malavan Sotheeswaran d591df1529 set thread as offline when waiting for time thread lock 2022-02-18 12:46:37 -05:00
Malavan Sotheeswaran cf799eae84 time thread lock uses fastlock instead of std::mutex 2022-02-18 12:46:37 -05:00
Malavan Sotheeswaran 5c816db669 only need to include readwritelock in ae 2022-02-18 12:46:37 -05:00
Malavan Sotheeswaran 7bbd6d73c8 hide forklock object in ae 2022-02-18 12:46:37 -05:00
malavan 0d5b349744 fork lock for all threads, use fastlock for readwritelock 2022-02-18 12:46:37 -05:00
John Sully ccf8d42e4b Update ci.yml
Change min tested version to 18.04
2022-01-31 18:43:54 -05:00
Malavan Sotheeswaran 93a748f86b remove unused lambda capture 2022-01-19 13:15:40 -08:00
MalavanEQAlpha 3e774999e7 Merge pull request #386 from EQ-Alpha/fix_rdb_hang
add readwrite lock for forking
2022-01-14 16:17:32 -05:00
MalavanEQAlpha 83563f6bb2 Merge branch 'unstable' into fix_rdb_hang 2022-01-12 21:13:45 -05:00
Christian Legge 875a82bdf8 Save and restore master info in rdb to allow active replica partial sync (#371)
* save replid for all masters in rdb

* expanded rdbSaveInfo to hold multiple master structs

* parse repl-masters from rdb

* recover replid info from rdb in active replica mode, attempt partial sync

* save offset from rdb into correct variable

* don't change replid based on master in active rep

* save and load psync info from correct fields
2022-01-12 19:49:15 -05:00
malavan 1e3fe8cab3 forklock only for time thread 2022-01-12 23:41:06 +00:00
malavan 127becc9e0 catch exceptions and relock in executeWithoutGlobalLock 2022-01-02 11:09:21 +00:00
malavan b57b1c8ff8 don't read query if waiting on fork 2021-12-24 18:00:07 +00:00
malavan bb83aef1da add latency monitor for forklock and expose writeWaiting status 2021-12-24 17:54:19 +00:00
malavan cbb9ac38d2 reduce work done outside global lock 2021-12-24 17:08:27 +00:00
malavan 6749c2bcf0 add functions to upgrade/downgrade read to/from write in readWriteLock 2021-12-24 06:54:54 +00:00
malavan 9957c11e2d restore assert that client is safe to unlock 2021-12-24 03:02:51 +00:00
malavan b4b30dcf9d add write waiting to readWriteLock to avoid starvation 2021-12-23 21:08:25 +00:00
malavan cddd3b6896 add executeWithoutGlobalLock function 2021-12-23 20:59:08 +00:00
John Sully b4528b797d Remove double free in keydb-benchmark 2021-12-23 14:20:41 -05:00
John Sully e070651039 Fix deadlock issue #183 cause by lock inversion 2021-12-23 13:17:14 -05:00
John Sully 7a32ec39fd Apple build break fix 2021-12-23 13:12:59 -05:00
John Sully 50dfee2039 Fix module test break 2021-12-23 13:12:34 -05:00
Malavan Sotheeswaran 9e92c038b8 reset cycle count on cvwait and name constant 2021-12-22 15:18:45 -05:00
Malavan Sotheeswaran c167902cbf reacquire fork lock every 500 time thread loops 2021-12-22 14:42:14 -05:00
Malavan Sotheeswaran c8bd5dbb4f timethread only releases forklock when waiting 2021-12-22 14:37:41 -05:00
Malavan Sotheeswaran 2c932d7b80 release fork lock on thread end 2021-12-22 14:08:00 -05:00
Malavan Sotheeswaran 8dff4f3437 need to acquire forklock on thread start 2021-12-22 14:06:55 -05:00
Malavan Sotheeswaran eec6b5142e explain deadlock possibility in acquireWrite 2021-12-22 14:05:46 -05:00
Malavan Sotheeswaran d2c080d923 further generalize readWrite lock and use it for moduleGIL 2021-12-22 13:59:58 -05:00
Malavan Sotheeswaran 754d5a3ba1 move fork lock management within redisFork 2021-12-22 11:19:24 -05:00
Malavan Sotheeswaran 4aaa7b7bd7 add forklock to time thread, wake time thread after acquiring locks 2021-12-22 11:06:15 -05:00
Malavan Sotheeswaran b93938914d add readwrite lock for forking 2021-12-21 18:11:51 -05:00
Vivek Saini 4b6bdcbcce 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.
2021-11-15 12:57:15 -05:00
benschermel 31c0e38d86 Merge pull request #345 from EQ-Alpha/pkg_update_tools
add keydb-diagnostic-tool to packaging
2021-11-10 22:16:09 -05:00
benschermel 8f5b94c75f Merge pull request #376 from EQ-Alpha/systemd_build
Systemd build
2021-11-10 22:14:24 -05:00
benschermel d1fc7b96ed fix typo 2021-11-11 02:36:20 +00:00
benschermel b253a7aa8d update license 2021-11-11 02:19:56 +00:00
benschermel 1625c74a36 Merge branch 'unstable' into systemd_build 2021-11-11 00:59:33 +00:00
Vivek Saini 3c716ee33d Security fixes (#373)
Fixing potential buffer overflows when using the bitop shift and cron commands, as well as comparing ACL user passwords in constant time.
2021-11-09 19:00:01 -05:00
VivekSainiEQ b03eab2a06 Backported time thread code from enterprise 2021-11-05 00:30:34 +00:00
VivekSainiEQ 6a0a005ff2 Check that cluster connection is valid before setting write handler 2021-11-02 17:43:17 +00:00