Commit Graph

29 Commits

Author SHA1 Message Date
sfc-gh-tclinkenbeard 5c2d7b6080 Create RangeResult type alias 2021-05-03 13:14:16 -07:00
Lukas Joswiak c016e154a7 Remove global config fdbserver fix
This is causing problems with the 5.2.0 restarting test. Removing this
line disables fdbserver processes from receiving global config updates,
instead requiring a restart to see them.
2021-05-02 11:03:07 -07:00
Lukas Joswiak 637699be32 Fix issue with fdbserver not receiving global config change
notifications
2021-05-01 21:41:10 -07:00
Lukas Joswiak cf4218dfd1 Fixes simulation failures
Fixes the following issues:

1. Use the right index when initializing the WriteOnlySet's vector of
   atomics. Also switch to std::atomic_init to initialize each atomic in
   the vector (cannot default construct the atomics in the vector
   because std::atomic does not have a copy constructor).
2. Add failure check for when items cannot be inserted into the
   WriteOnlySet due to capacity constraints. This situation occurs when
   `copy` is not called on the WriteOnlySet, such as when sampling is
   disabled. The `copy` function is what clears the WriteOnlySet.
3. Remove a global config feature I added to update the ClientDBInfo
   object used by the global config listener function. This needs more
   investigation, but the effect of this change could be that global
   config changes are not correctly recognized on fdbserver processes.
4. Add various ASSERTs to verify data in WriteOnlySet.
2021-05-01 15:26:28 -07:00
Lukas Joswiak e45faa3534 Fix a bug where deleting a key invalidated its memory which was later
read
2021-04-23 16:38:01 -07:00
Lukas Joswiak 52bba82e8e Add window size configuration key 2021-04-23 14:05:05 -07:00
Lukas Joswiak 15336ca274 Add callback for specific global configuration key changes 2021-04-20 17:51:38 -07:00
Lukas Joswiak 2357177722 Add bool support to global configuration 2021-04-20 15:05:51 -07:00
Lukas Joswiak c81e1e9519 Add sampling profiler frequency to global config 2021-04-19 22:46:57 -07:00
Lukas Joswiak 51e4c19675 Add migration for client profiling keys 2021-04-14 10:56:33 -07:00
Lukas Joswiak 2594d91f11 Update casing 2021-04-14 10:56:33 -07:00
Lukas Joswiak 7de23918c0 Add comments, fix erase bug, make optimizations 2021-04-14 10:56:33 -07:00
Lukas Joswiak 7ba7257cd2 Store global config data on heap 2021-04-14 10:56:33 -07:00
Lukas Joswiak 1c60653c2a Add fix to conditionally set global config history 2021-04-14 10:56:33 -07:00
Lukas Joswiak 6de28dd916 clang-format 2021-04-14 10:56:33 -07:00
Lukas Joswiak 1260385965 Use object to wrap global configuration history 2021-04-14 10:56:32 -07:00
Lukas Joswiak 1c84c04ffc Add global configuration prefix function 2021-04-14 10:56:32 -07:00
Lukas Joswiak 388344c31e Better estimation for arena size 2021-04-14 10:56:32 -07:00
Lukas Joswiak b7cd8175be Add arena per object in global config 2021-04-14 10:56:32 -07:00
Lukas Joswiak e5e48da5ce Revert removal of history size check 2021-04-14 10:56:32 -07:00
Lukas Joswiak e9e2ca54d6 Assert history contains data 2021-04-14 10:56:32 -07:00
Lukas Joswiak c3f68831af Move existing ClientDBInfo variables to global configuration 2021-04-14 10:56:32 -07:00
Lukas Joswiak 80c6048a01 Naming fixes 2021-04-14 10:56:32 -07:00
Lukas Joswiak 9587318696 Fix crash when history size is 0
This shouldn't happen in normal operation (if ClientDBInfo has been
updated, that means at least one item should have been added to the
history). But there is old functionality that uses other ClientDBInfo
fields to send updates to all nodes, and until this functionality is
removed this check needs to be here.
2021-04-14 10:56:32 -07:00
Lukas Joswiak 2acefa2c82 Add double and float support to tuples
Note that this functionality is copied from bindings/flow/Tuple.cpp.
These classes should eventually be combined (see #4351).
2021-04-14 10:56:32 -07:00
Lukas Joswiak 96732810ff Move actor implementation 2021-04-14 10:56:32 -07:00
Lukas Joswiak c9b0d3dd4e Fix memory leak
The map containing global configuration data had keys of type StringRef,
referencing data allocated in history arenas. When the old history
was deleted, this memory was no longer valid and some keys would point
to garbage memory.
2021-04-14 10:56:32 -07:00
Lukas Joswiak 9e20b08976 Add float and double parsing 2021-04-14 10:56:32 -07:00
Lukas Joswiak f1415412f1 Add global configuration framework implementation 2021-04-14 10:56:32 -07:00