30 Commits

Author SHA1 Message Date
Markus Pilman
1de37afd52
Make TEST macros C++ only (#7558)
* proof of concept

* use code-probe instead of test

* code probe working on gcc

* code probe implemented

* renamed TestProbe to CodeProbe

* fixed refactoring typo

* support filtered output

* print probes at end of simulation

* fix missed probes print

* fix deduplication

* Fix refactoring issues

* revert bad refactor

* make sure file paths are relative

* fix more wrong refactor changes
2022-07-19 13:15:51 -07:00
sfc-gh-tclinkenbeard
a71099471b Update copyright header dates 2022-03-21 13:36:23 -07:00
Lukas Joswiak
582ba5d519 Fix issue with stuck config nodes
In rare circumstances where the cluster controller dies / moves to a new
machine, sometimes only a minority of `ConfigNode`s received messages
telling them they were registered. When the `ConfigNode`s attempt to
register with the new broadcaster (on the new cluster controller), the
knob system would get stuck because only a minority would be registered.
Part of this change allows registration of unregistered `ConfigNode`s if
there is no path to a majority of registered nodes.
2022-03-15 11:42:58 -07:00
Lukas Joswiak
803fc86e61 Fix compaction issue when rolling nodes back 2022-02-22 16:21:33 -08:00
Lukas Joswiak
ce67d1937f Add explanation of out-or-order messages from broadcaster 2022-02-09 13:43:33 -08:00
Lukas Joswiak
c86712b4c0 Move single interface serve functions to testing interface 2022-02-09 13:43:33 -08:00
Lukas Joswiak
d5a562e6b8 Fix dynamic knobs correctness issues 2022-02-09 13:43:32 -08:00
Lukas Joswiak
30b525a607 Add assertions to check rollback 2021-10-25 12:03:22 -07:00
Lukas Joswiak
c96f560cbe Verify rollback of a single version in simulation, other small fixes 2021-10-25 12:03:22 -07:00
Lukas Joswiak
57c2cf4a24 Retry messages to well known endpoints, add notes for future work 2021-10-25 12:03:22 -07:00
Lukas Joswiak
92998fd20b Merge rollback message into rollforward message 2021-10-25 12:03:22 -07:00
Lukas Joswiak
7357d7714c Retry with well known endpoints, move last committed check to consumer 2021-10-25 12:03:22 -07:00
Lukas Joswiak
48dc91dd7f Add rollback and rollforward logic to ConfigBroadcaster 2021-10-25 12:03:22 -07:00
Lukas Joswiak
77ef8a737d Update fdbserver/ConfigNode.actor.cpp
Co-authored-by: Trevor Clinkenbeard <trevor.clinkenbeard@snowflake.com>
2021-09-21 14:31:41 -07:00
Lukas Joswiak
8e31682737 Update fdbserver/ConfigNode.actor.cpp
Co-authored-by: Trevor Clinkenbeard <trevor.clinkenbeard@snowflake.com>
2021-09-21 14:31:41 -07:00
Lukas Joswiak
83d6c319fb Cleanup, refactor, add unit test 2021-09-21 14:31:41 -07:00
Lukas Joswiak
782f13c25e Remove WAL mutations during rollback 2021-09-21 14:31:41 -07:00
Lukas Joswiak
9c561f49d9 Overwrite existing mutations with rollforward mutations, use existing annotations 2021-09-21 14:31:41 -07:00
Lukas Joswiak
b3a633b7d4 Update fdbserver/ConfigNode.actor.cpp
Co-authored-by: Trevor Clinkenbeard <trevor.clinkenbeard@snowflake.com>
2021-09-21 14:31:41 -07:00
Lukas Joswiak
a79aea108c Add rollforward capability to ConfigNode 2021-09-21 14:31:41 -07:00
Lukas Joswiak
919d2566e0 Add rollback capability to ConfigNode 2021-09-21 14:31:41 -07:00
Lukas Joswiak
96bf4268eb Implement IClosable in OnDemandStore 2021-09-13 12:28:17 -07:00
sfc-gh-tclinkenbeard
29d83291a1 Add CommitUnknownResult metric for ConfigIncrement workload 2021-08-27 00:44:12 -07:00
sfc-gh-tclinkenbeard
28f3481656 Remove unnecessary debugging trace events 2021-08-26 17:13:39 -07:00
sfc-gh-tclinkenbeard
28daab9f5c Use ActorCollection instead of std::vector<Future<Void>> in *Quorum classes, to listen for errors 2021-08-26 16:18:19 -07:00
sfc-gh-tclinkenbeard
79ba9c4e3a Add GetGenerationQuorum to get generation from a quorum of config nodes 2021-08-09 10:04:35 -07:00
sfc-gh-tclinkenbeard
cd8a82b1b8 Rename GetGenerationRequests metric 2021-08-09 10:04:35 -07:00
sfc-gh-tclinkenbeard
7deb339a0c Added ConfigIncrement.toml test 2021-08-09 10:04:35 -07:00
sfc-gh-tclinkenbeard
b15daf1886 Added PImpl class
This class propogates the constness of methods to their pimpl
implementations
2021-08-09 10:04:34 -07:00
sfc-gh-tclinkenbeard
b3e2b06553 Remove multiple implementations of ConfigNode 2021-07-18 18:25:06 -07:00