- Nov 09, 2022
-
-
Tarantool synchronous replication is broken in such a way, that local & asynchronous transactions get rolled back upon synchronous transaction rollback. This is critical for us, because we use local spaces for the raft log, which should be orthogonal to synchronous business spaces, but is not due to this behavior. Until it is fixed, we will not use synchronous replication. See https://github.com/tarantool/tarantool/issues/7903
-
-
-
Yaroslav Dynnikov authored
Rewrite it from scratch to satisfy tests and to represent governor logics in general.
-
Yaroslav Dynnikov authored
No assumptions should be made on `traft::node::Status.leader_id`. It can be set to `None` at any time due to a re-election.
-
Yaroslav Dynnikov authored
Lots of tests are marked "fixme" with the desired value commented. They'll be fixed in the next commit.
-
- Nov 08, 2022
-
-
Georgy Moshkin authored
-
Yaroslav Dynnikov authored
-
Yaroslav Dynnikov authored
-
Yaroslav Dynnikov authored
-
- Nov 01, 2022
-
-
Valentin Syrovatskiy authored
-
Georgy Moshkin authored
-
Georgy Moshkin authored
-
Georgy Moshkin authored
-
- Oct 31, 2022
-
-
Valentin Syrovatskiy authored
-
Georgy Moshkin authored
-
Georgy Moshkin authored
-
Georgy Moshkin authored
-
Georgy Moshkin authored
-
Georgy Moshkin authored
-
Georgy Moshkin authored
-
Georgy Moshkin authored
-
Georgy Moshkin authored
Cases covered: - when someone goes offline - whenever vshard gets reconfigured
-
-
-
Currently stores: - replicset_id - replicaset_uuid - sharding weight - replication master id
-
- Oct 28, 2022
-
-
Georgy Moshkin authored
-
- Oct 27, 2022
-
-
-
-
-
-
-
-
-
-
Only a few functions are allowed in signal handlers (see `man 7 signal-safety`). Both `println!()` and `std::process::exit()` are not acceptable. In our case `std::process::exit()` resulted in a dead lock when called concurrently. This patch fixes it, and also enhances some other aspects of the supervisor. See also: https://stackoverflow.com/questions/44865737/println-panics-when-called-concurrently
-
This commit slignly changes the order of entries in the raft log: ConfChange now comes at the first place before other Ops, but that's ok.
-
Do it only when the governor tells to. When `_G.vshard == nil`, it's more alike `traft::node::global()` which reurns either `Ok` or `Err(Uninitialized)`.
-
-
It produces better error messages. Before this commit: ``` tarantool> vshard.router.call() --- - error: '[string "local log = require(''log'')..."]:575: attempt to compare number with nil' ... ``` With this commit: ``` - error: 'vshard/router/init.lua:575: attempt to compare number with nil' ```
-