feature(server): Bring back inline scheduling (#1130)

* feat: run tx-schedule inline if the dest shard is on the same thread (#908)

The optimization is applied within ScheduleSingleHop call.

Signed-off-by: Roman Gershman <roman@dragonflydb.io>

* fix(server): Don't inline schedule when in LOADING

* Fix the another pre-emption bug with inline scheduling

* Better locking around journal callbacks

---------

Signed-off-by: Roman Gershman <roman@dragonflydb.io>
Co-authored-by: Roman Gershman <roman@dragonflydb.io>
This commit is contained in:
Roy Jacobson 2023-05-21 10:10:38 +03:00 committed by GitHub
parent 6697478a28
commit 7adf3799f0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 51 additions and 11 deletions

View file

@ -50,9 +50,9 @@ class Transaction;
class EngineShard;
struct KeyLockArgs {
DbIndex db_index;
DbIndex db_index = 0;
ArgSlice args;
unsigned key_step;
unsigned key_step = 1;
};
// Describes key indices.