Commit Graph

65 Commits

Author SHA1 Message Date
Lukas Joswiak 85da80a9ce Split ConfigIncrement workload
Adds a new ConfigIncrement workload that tests the ability of the
configuration database to remain correct under minority node data loss
situations.
2022-02-09 14:18:40 -08:00
Lukas Joswiak d5a562e6b8 Fix dynamic knobs correctness issues 2022-02-09 13:43:32 -08:00
Mohamed Oulmahdi f10b549bdf Remove Downgrade test
This test seems broken
2022-02-03 23:52:42 +01:00
A.J. Beamon 6affc58e97 Rename high contention allocator implementation in fdbclient 2022-01-31 14:25:38 -08:00
A.J. Beamon 027fe80594 Added a generic high contention allocator implementation to fdbclient. This is an adapted version of the flow bindings HCA implementation. 2022-01-28 15:34:30 -08:00
Markus Pilman d6fad2e489 readded old tlog tests 2021-11-08 15:52:08 -07:00
Markus Pilman 648b9c97ab fixed stupid mistake 2021-11-08 15:47:32 -07:00
Markus Pilman 7df059570a Make sure unit tests are run often enough 2021-11-08 15:43:32 -07:00
A.J. Beamon f78a68735a Add a specific unit test file for use by tooling. 2021-08-31 15:06:13 -07:00
sfc-gh-tclinkenbeard 6ecc38d22a Strengthen ConfigIncrement.toml test 2021-08-27 15:18:32 -07:00
sfc-gh-tclinkenbeard 288933bdf6 Add MachineAttrition to ConfigIncrement workload 2021-08-24 11:30:41 -07:00
sfc-gh-tclinkenbeard 9e7ed1f18c Randomize configuration database type for ConfigIncrement test 2021-08-24 11:08:06 -07:00
sfc-gh-tclinkenbeard d8bdc972ba Only test simple configuration database in ConfigIncrement.toml
There are still some issues with the Paxos implementation that are
causing test failures at the moment.
2021-08-10 11:18:56 -07:00
sfc-gh-tclinkenbeard c126e6239b Weaken ConfigIncrement.toml test
This test is not yet stable, so simplify the test in order to make
debugging easier.
2021-08-09 10:18:18 -07:00
sfc-gh-tclinkenbeard f6b6e11d6a Support randomizing configuration database type in simulation 2021-08-09 10:04:35 -07:00
sfc-gh-tclinkenbeard cdbcb69d86 Add configuration database type to ISimulator 2021-08-09 10:04:35 -07:00
sfc-gh-tclinkenbeard 6524dd1567 Add random sleep to ConfigIncrement workload 2021-08-09 10:04:35 -07:00
sfc-gh-tclinkenbeard 7deb339a0c Added ConfigIncrement.toml test 2021-08-09 10:04:35 -07:00
Markus Pilman 64608fe86b allow simulation properties to be overwritten 2021-05-20 13:48:41 -06:00
Steve Atherton 1c5013f6ec Removed btree cleanup parameter override. 2021-04-13 20:19:25 -07:00
Steve Atherton 7b08886caf Updated btree unit test name. 2021-04-07 18:29:17 -07:00
Steve Atherton e7573d546f Some unit tests names had a prefixed "!" in order to be excluded from random selection, this has been changed to a ":" as it is less problematic on the command line. Some Redwood unit tests have been enabled for random selection. 2021-04-05 00:03:15 -07:00
sfc-gh-tclinkenbeard 45c9a0abc7 Revert "Revert "Add limiting health metrics""
This reverts commit 209ebcc595.
2020-11-13 17:24:57 -08:00
Trevor Clinkenbeard 209ebcc595
Revert "Add limiting health metrics" 2020-11-13 17:08:46 -08:00
sfc-gh-tclinkenbeard 9bb93dadf1 Reenabled Throttling.toml test (as a rare test) 2020-11-13 11:34:32 -08:00
Xiaoxi Wang f930f9bbb6 update toml test spec 2020-09-02 05:25:40 +00:00
Evan Tschannen a49cb41de7 Merge branch 'release-6.3'
# Conflicts:
#	CMakeLists.txt
#	cmake/ConfigureCompiler.cmake
#	fdbserver/Knobs.cpp
#	fdbserver/StorageCache.actor.cpp
#	fdbserver/storageserver.actor.cpp
#	flow/ThreadHelper.actor.h
#	flow/serialize.h
#	tests/CMakeLists.txt
2020-07-29 00:31:55 -07:00
Alex Miller 2841efe938 Rewrite most .txt tests into (pretty) .toml files.
This includes build/txt-to-toml.py which did the rewrites, and
can be used to rewrite other no-in-tree test spec files to toml.

I didn't touch status or restarting tests yet.  Restarting will be handled
later.  It turns out that I don't understand how status tests work.
2020-07-12 14:47:40 -07:00
sfc-gh-tclinkenbeard 10a4b8e321 Make Downgrade test rare 2020-07-09 17:52:41 -07:00
Alex Miller 17570b5b10 Make the testspec more restrictive in terms of what can be set where.
Testspec is currently very permissive in very misleading ways.  In particular,
the tester parser itself will swallow K=V settings and apply them at the test
level, which breaks how a person would expect the scoping to work.  Other
settings apply to the entire simulation run globally, but appear to be workload
specific.  Even further, others affect simulation cluster creation or test
harness behavior, but can again be set anywhere in a testspec.

This changes testspec parsing to error if a setting that applies globally is
anywhere but the top of the file, or if a setting that applies test-wide is
applied to a workload instead of a test.
2020-07-06 02:03:30 -07:00
A.J. Beamon 80a235aa80 Add some correctness tests 2020-05-04 10:15:18 -07:00
Stephen Atherton 9227de5c20 Redwood correctness unit test was using wallclock based time limit which breaks determinism. 2019-11-11 15:13:58 -08:00
Evan Tschannen d8ea3dbf9a Added the ability to configure a cluster from a JSON file 2018-08-16 17:34:59 -07:00
Evan Tschannen 9c918a28f6 fix: status was reporting no replicas remaining when the remote datacenter was initially configured with usable_regions=2 2018-08-09 13:16:09 -07:00
Evan Tschannen 6d76ff67a3 added the connection string to status 2018-07-09 22:11:58 -07:00
Evan Tschannen 507b3bacb0 fix: kill all tlogs in one region prevents the remote logs from recovering in that region, do not allow that to prevent us from configuring usable_regions=1.
added more recovery states.
2018-07-05 00:08:51 -07:00
Evan Tschannen 866ccfe344 added the ability to allow the master to finish recovery before all storage servers in both regions have their mutations. This allows you to recover from scenarios where you lose all your tlogs in one dc. 2018-07-04 01:59:04 -04:00
Evan Tschannen 0123627d67 Merge branch 'master' into feature-remote-logs
# Conflicts:
#	tests/fast/SidebandWithStatus.txt
#	tests/rare/LargeApiCorrectnessStatus.txt
#	tests/slow/DDBalanceAndRemoveStatus.txt
2018-06-22 10:43:07 -07:00
Evan Tschannen 8a8914f046 re-added the ability to configure the number of log routers. Many log routers are needed to get a sufficient number of sockets involved in copying data across the WAN 2018-06-22 00:04:00 -07:00
A.J. Beamon e8f66df001 Add metrics for watches and mutations on the storage server. The storage server tracks its lag with the logs, and status tries to report a more accurate measure of this lag. 2018-06-21 15:59:43 -07:00
A.J. Beamon 62eeefcc8a Update status schema with new field 2018-06-20 12:09:28 -07:00
Evan Tschannen 1ccfb3a0f4 fix: log_anti_quorum was always 0 in simulation
removed durableStorageQuorum, because it is no longer a useful configuration parameter
2018-06-18 10:24:57 -07:00
Evan Tschannen e8c462882b re-added remote_logs as a parameter, because it could be useful to have a different number of logs between when recruited as primary and remote 2018-06-18 10:22:34 -07:00
Evan Tschannen 0913368651 added usable_regions to specify if we will replicate into a remote region
remote replication defaults to the primary replication
removed remote_logs, because they should be specified as an override in the regions object
2018-06-17 19:31:15 -07:00
Evan Tschannen 246abd1207 added full_replication to status 2018-06-14 21:14:18 -07:00
Evan Tschannen 0103b6f5ed added datacenter_version_difference to status 2018-06-14 19:09:25 -07:00
Evan Tschannen 99e21c869c fixed a number of status calculations, and re-enabled the status workload 2018-06-14 17:58:57 -07:00
A.J. Beamon ca720e1540
Merge pull request #297 from apple/release-5.2
Merge 5.2 to Master
2018-05-08 12:04:20 -07:00
A.J. Beamon 432a295bc2 Add read bytes and read keys info to status. Collect this information directly from StorageMetrics rather than through ratekeeper. 2018-05-04 12:01:40 -07:00
Evan Tschannen 91bb8faa45 Merge commit 'f773b9460d31d31b7d421860fc647936f31aa1fa'
# Conflicts:
#	tests/fast/SidebandWithStatus.txt
#	tests/rare/LargeApiCorrectnessStatus.txt
#	tests/slow/DDBalanceAndRemoveStatus.txt
2018-03-09 14:47:03 -08:00