Commit Graph

105 Commits

Author SHA1 Message Date
Jingyu Zhou 2d2a2144f4
Update copyright years to 2013-2026 (#12653)
No functional changes.
2026-01-22 10:49:41 -08:00
Syed Paymaan Raza bafb5ca6a3
Apply latest clang-format (#12080) 2025-04-10 20:29:51 -07:00
Syed Paymaan Raza c3e7542cda Update end year in copyright header 2024-08-02 09:40:11 -07:00
FoundationDB CI 86d6106dc1
format source code after switch to clang 15 2022-12-08 17:26:45 +00:00
Kevin Hoxha 6c62ff3cf8 configdb: Fix ConfigIncrementWorkload ConfigDatabaseUnitTests to use tuple instead of binary reader 2022-10-11 15:32:01 -07:00
Lukas Joswiak b2d395a304 Delay cluster controller restart when pushing knob updates to workers
This gives the `ConfigBroadcaster` time to send the knob change to all
workers before applying the change to itself and restarting.
2022-09-13 16:53:54 -07:00
Lukas Joswiak 8d237ba493 Fix various correctness and timeout issues
Contains the following fixes:

* When handling the special case rollforward where nodes can be rolled
  forward even if a majority are at version 0, we don't want to reset
  the live version of the node being rolled forward. This is because a
  quorum of nodes at version 0 can continue handing out and incrementing
  their live version, and if they are rolled forward there is the
  potential for them to go back in time in regard to their live version.
  So in this one special case, they should maintain their existing live
  version.
* Fixes some unseed issues due to fields not being initialized properly.
* Temporarily disables a coordinator restart in the recovery path (in
  the coordinated state) due to it causing a timeout. This needs more
  investigation in the future.
2022-09-13 16:53:54 -07:00
Lukas Joswiak 249ff2b2fd Fix configuration database unit tests 2022-09-13 16:53:54 -07:00
Lukas Joswiak 74ac617a34 Add support for changing coordinators to the configuration database
Configuration database data lives on the coordinators. When a change
coordinators command is issued, the data must be sent to the new
coordinators to keep the database consistent.
2022-09-13 16:53:54 -07:00
Lukas Joswiak 9ca8a3c683 Reenable status json for dynamic knobs, add unit test 2022-06-21 11:43:05 -07:00
sfc-gh-tclinkenbeard a71099471b Update copyright header dates 2022-03-21 13:36:23 -07:00
Renxuan Wang f7eb66441d Try eliminating warnings in macOS and Windows CI builds.
MacOS warnings are format warnings, e.g., `format specifies type 'long' but the argument has type 'Version' (aka 'long long')`.
Windows warnings are `ACTOR does not contain a wait() statement`.
2022-02-25 19:06:57 -08:00
Lukas Joswiak d5a562e6b8 Fix dynamic knobs correctness issues 2022-02-09 13:43:32 -08:00
Lukas Joswiak 92998fd20b Merge rollback message into rollforward message 2021-10-25 12:03:22 -07:00
Lukas Joswiak 83d6c319fb Cleanup, refactor, add unit test 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 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
Lukas Joswiak 95710f5f49 Add fix for KillWorker unit test
The fix here is essentially to add additional work to the unit test. The
problem seems to be that during setup, some initial work is being done
with the key value store the ConfigNode opens. The simulator seems to be
doing work in the background to make the key value store "durable", but
because the unit test ends so quickly, the simulation is interrupted
(the key value files get deleted after the unit test is finished).
2021-09-13 12:28:17 -07:00
Lukas Joswiak 7e6bc27863 Remove linear time loop 2021-08-23 14:02:41 -07:00
Lukas Joswiak f037ac7b19 Fix capitalization 2021-08-23 12:59:01 -07:00
Lukas Joswiak eaac647558 Fix kill worker bug 2021-08-23 12:45:42 -07:00
Lukas Joswiak adc1025fa1 Clean up clientFailures periodically 2021-08-23 12:45:42 -07:00
Lukas Joswiak d004703cc8 Add worker kill unit test 2021-08-23 12:45:42 -07:00
Lukas Joswiak 4c92026213 Use existing error when triggering local config restart 2021-08-23 11:41:01 -07:00
Lukas Joswiak 338fc59673 Separate test knobs into atomic and nonatomic 2021-08-23 11:41:00 -07:00
Lukas Joswiak e0f75c2b99 Remove TODO 2021-08-23 11:41:00 -07:00
Lukas Joswiak 078e614595 Add atomic clear unit test 2021-08-23 11:41:00 -07:00
Lukas Joswiak 4107c35538 Add atomic knob unit test 2021-08-23 11:41:00 -07:00
Josh Slocum 074bd174b6 Fix worker segfault by reference counting LocalConfiguration 2021-08-18 14:07:20 -05:00
Lukas Joswiak c098a1128d Push snapshot changes to local configuration on refresh 2021-08-11 09:13:22 -07:00
Lukas Joswiak 7fe863c2a0 Temporarily remove failing unit test 2021-08-10 16:20:51 -07:00
Lukas Joswiak 9f4ea02784 Reremove old TODO 2021-08-10 12:14:50 -07:00
Lukas Joswiak 598b23f8d4 Merge branch 'features/broadcaster-push' of github.com:sfc-gh-ljoswiak/foundationdb into features/broadcaster-push 2021-08-10 12:08:16 -07:00
Lukas Joswiak 2ed2294ccb Remove old TODO 2021-08-10 12:00:43 -07:00
Lukas Joswiak 72e55ef72e Add broadcaster error check to unit tests 2021-08-10 11:39:29 -07:00
Lukas Joswiak 833e53f8f0 Add tests back 2021-08-10 11:39:29 -07:00
Lukas Joswiak 305a17c811 Improve config broadcaster logic, fix unit tests 2021-08-10 11:39:29 -07:00
Lukas Joswiak 3946cf94ff Push updates to workers (clang-formatted files) 2021-08-10 11:39:29 -07:00
Lukas Joswiak 092ab4302b Push updates to workers 2021-08-10 11:39:29 -07:00
Lukas Joswiak ec78fb3060 Add tests back 2021-08-09 17:42:27 -07:00
Lukas Joswiak 5249105b04 Improve config broadcaster logic, fix unit tests 2021-08-09 13:20:06 -07:00
Lukas Joswiak 38d05a2f49 Push updates to workers (clang-formatted files) 2021-08-05 18:57:12 -07:00
Lukas Joswiak 0116d17dbb Push updates to workers 2021-08-05 18:50:11 -07:00
Trevor Clinkenbeard 5e1639ad32
Merge pull request #5222 from sfc-gh-tclinkenbeard/paxos-config-db
Simple (non-fault tolerant) implementation of replicated configuration database
2021-08-02 10:03:24 -07:00
sfc-gh-tclinkenbeard 59ddfd78bd Merge remote-tracking branch 'origin/master' into paxos-config-db 2021-07-28 12:54:02 -07:00
sfc-gh-tclinkenbeard 3442ebd3b7 Fix more -Wreorder-ctor warnings across many files 2021-07-24 11:20:51 -07:00
sfc-gh-tclinkenbeard 6f81155784 Merge remote-tracking branch 'origin/master' into const-serverdbinfo 2021-07-20 10:18:40 -07:00
sfc-gh-tclinkenbeard 57033001d3 Remove unnecessary template 2021-07-18 19:26:11 -07:00