Commit Graph

62 Commits

Author SHA1 Message Date
sfc-gh-tclinkenbeard 7fc85d86b4 Add fdb_transaction_get_tag_throttled_duration function to C bindings 2022-11-13 11:22:57 -08:00
sfc-gh-tclinkenbeard c2dab7b0e0 Add ISingleThreadTransaction::getTotalCost method 2022-10-16 21:58:11 -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
Markus Pilman 8af056e7b0 fdbclient now compiling 2022-06-23 18:05:36 -06:00
Renxuan Wang df4e0deb4d
coordinatorsKey should not always store IP addresses. (#7204)
* coordinatorsKey should not storing IP addresses.

Currently, when we do a commit of coordinator change, we are always converting hostnames to IP addresses and store the converted results in coordinatorsKey (\xff/coordinators). This result in ForwardRequest also sending IP addresses, and receivers will update their cluster files with IPs, then we lose the dynamic IP feature.

* Remove the legacy coordinators() function.

* Update async_resolve().

ip::basic_resolver::async_resolve(const query & q, ResolveHandler && handler) is deprecated.

* Clean code format.

* Fix typo.

* Remove SpecifiedQuorumChange and NoQuorumChange.
2022-05-23 11:42:56 -07:00
Renxuan Wang c69a07a858
Check in the new Hostname logic. (#6926)
* Revert #6655.

20220407-031010-renxuan-c101052c21da8346           compressed=True data_size=31004844 duration=4310801 ended=100000 fail_fast=10 max_runs=100000 pass=100000 priority=100 remaining=0 runtime=1:04:15 sanity=False started=100047 stopped=20220407-041425 submitted=20220407-031010 timeout=5400 username=renxuan

* Revert #6271.

20220407-051532-renxuan-470f0fe6aac1c217           compressed=True data_size=30982370 duration=3491067 ended=100002 fail_fast=10 max_runs=100000 pass=100002 priority=100 remaining=0 runtime=0:59:57 sanity=False started=100141 stopped=20220407-061529 submitted=20220407-051532 timeout=5400 username=renxuan

* Revert #6266.

Remove resolving-related functionalities in connection string. Connection string will be used for storing purpose only, and non-mutable.

20220407-175119-renxuan-55d30ee1a4b42c2f           compressed=True data_size=30970443 duration=5437659 ended=100000 fail_fast=10 max_runs=100000 pass=100000 priority=100 remaining=0 runtime=0:59:31 sanity=False started=100154 stopped=20220407-185050 submitted=20220407-175119 timeout=5400 username=renxuan

* Add hostname to coordinator interfaces.

* Turn on the new hostname logic.

* Add the corresponding change in config txns.

The most notable change is before calling basicLoadBalance(), we need to call tryInitializeRequestStream() to initialize request streams first.

Passed correctness tests.

* Return error when hostnames cannot be resolved in coordinators command.

* Minor fixes.
2022-04-27 21:54:13 -07:00
sfc-gh-tclinkenbeard a71099471b Update copyright header dates 2022-03-21 13:36:23 -07:00
A.J. Beamon c635dcd3ad Add tenant support in the FDB native client 2022-03-15 09:21:27 -07:00
A.J. Beamon e882eb33fc Abstract the cluster file into a cluster connection record that can be backed by something other than the filesystem. 2021-10-22 11:05:18 -07:00
sfc-gh-tclinkenbeard 86c6c2b643 Merge remote-tracking branch 'origin/master' into paxos-config-db 2021-08-27 23:24:14 -07:00
FDB Formatster 2c788c233d apply clang-format to *.c, *.cpp, *.h, *.hpp files 2021-08-27 17:07:47 -07:00
sfc-gh-tclinkenbeard 3a880b43d4 Fix and reenable PaxosConfigTransaction::onError 2021-08-27 15:06:33 -07:00
sfc-gh-tclinkenbeard 29d83291a1 Add CommitUnknownResult metric for ConfigIncrement workload 2021-08-27 00:44:12 -07:00
sfc-gh-tclinkenbeard d541b3804d Make SimpleConfigTransaction more consistent with PaxosConfigTransaction 2021-08-26 16:18:24 -07:00
sfc-gh-tclinkenbeard 5689592ac5 Handle not_committed error in SimpleConfigTransaction::onError 2021-08-23 13:11:30 -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
Trevor Clinkenbeard 3992b0591c
Merge pull request #5213 from sfc-gh-tclinkenbeard/async-task-thread
Several AsyncTaskThread improvements
2021-08-05 14:33:30 -07:00
sfc-gh-tclinkenbeard a55e849da0 Add some documentation to ConfigGeneration and fix getReadVersion implementations 2021-07-28 13:04:05 -07:00
sfc-gh-tclinkenbeard 634aa2deae Fix IConfigTransaction::getReadVersion implementations 2021-07-26 19:37:12 -07:00
sfc-gh-tclinkenbeard b24b46c862 Replace Standalone<RangeResultRef> with RangeResult in configuration database code 2021-07-18 14:26:15 -07:00
sfc-gh-tclinkenbeard 91e6b7d83d Implement several more PaxosConfigTransaction methods 2021-07-18 14:21:21 -07:00
sfc-gh-tclinkenbeard de871da75f Add some simple implementations to PaxosConfigTransaction methods 2021-07-18 14:02:45 -07:00
sfc-gh-tclinkenbeard 54fb0cbe85 Use full generation in ConfigTransactionInterface 2021-07-18 12:23:34 -07:00
sfc-gh-tclinkenbeard 87f46fa0af Use std::unique_ptr for AsyncTaskThread::queue elements 2021-07-17 17:00:36 -07:00
sfc-gh-tclinkenbeard 475abe301c Merge remote-tracking branch 'origin/master' into fix-ub 2021-07-14 10:47:02 -07:00
sfc-gh-tclinkenbeard 8cc40e3a2b Expand use of BOOLEAN_PARAM 2021-07-02 21:41:50 -07:00
sfc-gh-tclinkenbeard fe5e7f8c2a Remove ISingleThreadTransaction::create function 2021-06-29 10:29:41 -07:00
Andrew Noyes af0f286e17 Fix a few instances of UB
Member access to address which does not point to correct type
2021-06-22 21:44:59 -07:00
sfc-gh-tclinkenbeard 06e4cabc02 Addressed review comments 2021-06-12 08:21:40 -07:00
sfc-gh-tclinkenbeard 30166724f1 Improved pimpl const-correctness in configuration database classes 2021-06-10 14:49:05 -07:00
sfc-gh-tclinkenbeard 83a0e473e8 Refactor IKnobCollection code 2021-06-09 20:50:00 -07:00
sfc-gh-tclinkenbeard 6fc5bd3480 Remove TestID from stateful configuration database classes, and fix some bugs 2021-06-07 00:29:36 -07:00
sfc-gh-tclinkenbeard 6fc2f1ddcb Fix/remove some TODO comments in configuration database code 2021-06-06 09:27:51 -07:00
sfc-gh-tclinkenbeard 89dadf1475 Create IKnobCollection interface 2021-06-02 23:40:52 -07:00
sfc-gh-tclinkenbeard 905f0065e5 Store DatabaseContext reference in configuration transaction objects 2021-06-02 22:14:58 -07:00
sfc-gh-tclinkenbeard 03be6ce8da Remove KnobValueRef::Clear class 2021-06-02 21:36:34 -07:00
sfc-gh-tclinkenbeard 4c059670a0 Parse configuration knob values on the client 2021-06-02 10:04:46 -07:00
sfc-gh-tclinkenbeard 9515e8d44f Add special configuration database keys to SystemData.h 2021-05-29 11:48:47 -07:00
sfc-gh-tclinkenbeard e1b6f6aff1 Support and test global knob names range reads 2021-05-29 04:31:35 -07:00
sfc-gh-tclinkenbeard 6665f5cc4d Support and test restricted range reads 2021-05-29 03:58:18 -07:00
sfc-gh-tclinkenbeard 3d733deec9 Normalize configuration commit annotations 2021-05-24 01:25:50 -07:00
sfc-gh-tclinkenbeard 753ef31a8a Refactor ConfigDatabaseUnitTests.actor.cpp 2021-05-23 12:34:10 -07:00
sfc-gh-tclinkenbeard ea8396c9be Improve decoupling of configuration database interfaces and implementations 2021-05-17 15:31:03 -07:00
sfc-gh-tclinkenbeard ba8d21e340 Added dummy PaxosConfigTransaction implementation 2021-05-17 13:02:55 -07:00
sfc-gh-tclinkenbeard 5c3b293fce Fix some SimpleConfigTransaction bugs 2021-05-15 12:41:16 -07:00
sfc-gh-tclinkenbeard bb61a20851 Improve const-correctness of ISingleThreadTransaction 2021-05-15 00:23:21 -07:00
sfc-gh-tclinkenbeard 01eab20fc0 Remove duplicate Knobs::reset code 2021-05-14 23:02:40 -07:00
sfc-gh-tclinkenbeard b3565080dd Improve configuration database logging 2021-05-13 16:39:58 -07:00
sfc-gh-tclinkenbeard 511ce8d088 Use SimpleConfigConsumer in LocalConfiguration 2021-05-12 17:24:13 -07:00