- 29 Jun, 2018 3 commits
-
-
Georgios Bitzes authored
-
Georgios Bitzes authored
The lease commands are to be timestamped by the server, not the client. Let's just pretend to sneaky clients that timestamped lease commands simply do not exist.
-
Georgios Bitzes authored
-
- 28 Jun, 2018 5 commits
-
-
Georgios Bitzes authored
-
Georgios Bitzes authored
-
Georgios Bitzes authored
-
Georgios Bitzes authored
Error messages etc are a bit rough right now, we need to refactor a few things as well, and add more tests. But the basic functionality works.
-
Georgios Bitzes authored
-
- 27 Jun, 2018 6 commits
-
-
Georgios Bitzes authored
And add a comment detailing what's going on.
-
Georgios Bitzes authored
This is a valid case: The raft term changes after retrieving the state snapshot, but before inserting into the journal. The journal correctly rejects the entry - we should simply warn and report "unavailable" to the client. Stalling writers until the leadership marker has been applied makes this race far more common - stress tests were failing, but the race itself was there even before.
-
Georgios Bitzes authored
Just because we can. :P An automated client should never need to call this.
-
Georgios Bitzes authored
-
Georgios Bitzes authored
-
Georgios Bitzes authored
-
- 25 Jun, 2018 6 commits
-
-
Georgios Bitzes authored
Along with some more information: last renewal time, and deadline.
-
Georgios Bitzes authored
-
Georgios Bitzes authored
-
Georgios Bitzes authored
-
Georgios Bitzes authored
-
Georgios Bitzes authored
-
- 22 Jun, 2018 8 commits
-
-
Georgios Bitzes authored
-
Georgios Bitzes authored
-
Georgios Bitzes authored
Ordered by deadline.
-
Georgios Bitzes authored
DEL would iterate over the contents of the DB, not the contents of the staging area. (pending changes + DB) A transaction with the following commands was able to trip an assert and cause a crash: - HSET hash f1 v1 - HSET hash f2 v2 - DEL hash Since DEL was only able to scan fewer elements than the size of the key descriptor (due to not having "hash#f1" and "hash#f2" in the main DB yet), it would detect something was wrong and assert. Has never happened so far, but it's only a matter of time.
-
Georgios Bitzes authored
-
Georgios Bitzes authored
-
Georgios Bitzes authored
-
Georgios Bitzes authored
-
- 21 Jun, 2018 1 commit
-
-
Georgios Bitzes authored
-
- 20 Jun, 2018 4 commits
-
-
Georgios Bitzes authored
To be used with leases.
-
Georgios Bitzes authored
-
Georgios Bitzes authored
Most key + fields will end up being larger than 32 bytes. Increasing this a bit will save lots of dynamic allocations.
-
Georgios Bitzes authored
-
- 19 Jun, 2018 2 commits
-
-
Georgios Bitzes authored
Most will be a single line - this makes them easily copy-pasteable without having to worry about newlines.
-
Georgios Bitzes authored
-
- 18 Jun, 2018 4 commits
-
-
Georgios Bitzes authored
-
Georgios Bitzes authored
-
Georgios Bitzes authored
Gives cleaner output in MONITOR.
-
Georgios Bitzes authored
-
- 16 Jun, 2018 1 commit
-
-
Georgios Bitzes authored
-