Commit Graph

71 Commits

Author SHA1 Message Date
Markus Pilman d1c80659b5 Remember disk corruptions and downgrade trace severity if a corruption was injected 2022-10-19 16:18:00 -06:00
Markus Pilman 7457c5059b Merge remote-tracking branch 'origin/main' into bugfixes/machines-attrition-debugging
# Conflicts:
#	fdbserver/workloads/GetMappedRange.actor.cpp
2022-10-17 14:39:46 -06:00
Markus Pilman 49f0cf5ab0 Force name and description of workloads to be the same 2022-10-13 20:53:48 -06:00
Markus Pilman cfbc263c0a Enable attrition injection 2022-10-13 14:38:36 -06:00
sfc-gh-tclinkenbeard 2434f18c5c Enable failure injection for all simulation tests 2022-09-29 14:14:24 -07:00
Hui Liu c9b4fc5761 disallow MoveKeysWorkload running in parallel 2022-09-22 17:00:01 -07:00
A.J. Beamon 4fd64630e8 Convert literal string ref instances to use _sr suffix 2022-09-19 11:35:58 -07:00
Markus Pilman e1627e0a78 Merge remote-tracking branch 'origin/main' into features/always-inject-faults 2022-09-19 09:38:55 -06:00
Markus Pilman 9441795c8e address review comments 2022-09-16 14:40:10 -06:00
sfc-gh-tclinkenbeard 82adc1e856 Make g_simulator a pointer 2022-09-15 09:00:33 -07:00
Markus Pilman bef5b87472 add clogging workload 2022-08-08 14:30:41 -06:00
Markus Pilman 2f7e6ee278 don't do failure injection for change config and quiescence tests 2022-08-03 17:04:06 -06:00
Markus Pilman 31f05f2fdf Separated normal workloads and failure injection
Also first implementation with machine attrition
2022-08-02 17:04:02 -06:00
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
Dan Adkins bd47f390bd
Add simulation test for three_data_hall configuration (#7305)
* Add simulation test for 1 data hall + 1 machine failure case.

* Disable BUGGIFY for DEGRADED_RESET_INTERVAL.

A simulation test discovered a situation where machines attempting to connect
to a dead coordinator (with a well-known endpoint) were getting themselves
marked degraded. This flapping of the degraded state prevented recovery from
completing, as it started over any time it noticed that tlogs on degraded
hosts could be relocated to non-degraded ones.

bin/fdbserver -r simulation -f tests/rare/CycleWithDeadHall.toml -b on -s 276841956
2022-06-06 13:14:49 -07:00
sfc-gh-tclinkenbeard a71099471b Update copyright header dates 2022-03-21 13:36:23 -07:00
A.J. Beamon 81e8c7c362 Various test fixes to work with tenants. 2022-03-17 12:10:18 -07:00
Xiaoge Su abf73047ca Enforce std:: specifier rather than using namespace 2021-09-16 19:40:28 -07:00
Steve Atherton 507c1f11e3 Add .log() to bare TraceEvent() invocations without any .detail()s to avoid clang-tidy warning about immediate destruction of object without use. 2021-07-26 19:55:10 -07:00
Sajjad Rahnama e04646e267 Fault Injection Active/Deactivation 2021-07-23 16:28:20 -07:00
FDB Formatster df90cc89de apply clang-format to *.c, *.cpp, *.h, *.hpp files 2021-03-10 10:18:07 -08:00
A.J. Beamon aaf0a9aa7b Merge branch 'release-6.3' into merge-release-6.3-into-master
# Conflicts:
#	build/docker-compose.yaml
#	cmake/ConfigureCompiler.cmake
#	fdbclient/FileBackupAgent.actor.cpp
#	fdbrpc/AsyncFileCached.actor.h
#	fdbrpc/IAsyncFile.h
#	fdbrpc/IRateControl.h
#	fdbrpc/simulator.h
#	fdbserver/KeyValueStoreSQLite.actor.cpp
#	fdbserver/storageserver.actor.cpp
#	fdbservice/ServiceBase.cpp
2021-02-08 12:58:34 -08:00
A.J. Beamon 67e783acf8 Merge branch 'release-6.2' into merge-release-6.2-into-release-6.3
# Conflicts:
#	cmake/CompileBoost.cmake
#	cmake/FDBComponents.cmake
#	fdbrpc/AsyncFileCached.actor.h
#	fdbrpc/simulator.h
#	fdbserver/KeyValueStoreSQLite.actor.cpp
#	fdbserver/Knobs.cpp
#	fdbserver/Knobs.h
#	fdbserver/storageserver.actor.cpp
#	flow/Knobs.h
#	flow/network.h
2021-02-08 09:20:28 -08:00
Evan Tschannen 40d855943c temporarily disable disk stalls in simulation 2021-02-02 17:33:47 -08:00
Evan Tschannen 36e4f82115 more complete support for simulated disk failures 2021-01-27 14:29:43 -08:00
sfc-gh-tclinkenbeard 7f0d14c8e4 Modernize/refactor workloads directory 2020-10-04 22:29:07 -07:00
Evan Tschannen 07cc0a8d74 code cleanup 2020-04-10 17:02:11 -07:00
Jon Fu ff19e11b40 added more parameters 2019-11-20 15:11:18 -08:00
Jon Fu c8a4ad0412 added live duration before kill and changed naming of variables from machine to worker 2019-11-20 10:46:00 -08:00
Jon Fu bdbd887fa5 revise some trace lines 2019-11-08 15:09:09 -08:00
Jon Fu 2147401a21 added function lambda and ability to specify zone kill 2019-11-08 15:05:18 -08:00
Jon Fu 489a98c62b use vector of targets and removed randomization from specified kill types (dc, datahall, etc.) 2019-11-08 13:56:39 -08:00
Jon Fu da1a70e19a fix check for killable processes 2019-11-05 13:57:32 -08:00
Jon Fu 72ad8c5f99 only randomize killdc option under simulation 2019-11-05 13:31:47 -08:00
Jon Fu ba2c5dd2a6 first draft of adding option to kill processes 2019-11-04 15:46:45 -08:00
Jon Fu d9d1cdc470 removed delay before kill 2019-11-04 11:19:39 -08:00
Andrew Noyes d4de608bb6 Fix OPEN_FOR_IDE build 2019-10-25 10:42:22 -07:00
Jon Fu 5d7c84b803 moved shuffle outside of the conditional blocks 2019-10-24 09:45:04 -07:00
Jon Fu ab262e5e4d use StringRef over std::string for workload params 2019-10-23 14:55:28 -07:00
Jon Fu 103cc37a35 added datahall kill and option to target a specific datahall/dc/machine id 2019-10-23 14:19:17 -07:00
Jon Fu d97ff75638 added mode to specifically kill all workers with same machineId 2019-10-23 11:30:16 -07:00
Jon Fu 47dc0ee25c removed coordinator check and added pre-processing of workers rather than checking each cycle 2019-10-23 11:19:27 -07:00
Jon Fu fa654d9da7 updated to not kill majority of coordinators 2019-10-16 10:00:16 -07:00
Jon Fu 373ac3026f update check for dcId 2019-10-14 15:03:04 -07:00
Jon Fu 0489f81c10 Initial commit to modify machine attrition to work outside simulation 2019-10-14 13:11:49 -07:00
Xin Dong f9ebb73d4f Fix a bug where the actor got cancelled and thus leave the correctness hang 2019-08-26 12:49:02 -07:00
Evan Tschannen 5dc4c80d44 fix: the machineAttrition workload did not ensure that healthyZone was always cleared
fix: an assert could trigger spuriously
2019-08-05 15:00:17 -07:00
Xin Dong cda70700cc Address review comments. 50K correctness with no failures. 2019-07-30 22:24:30 -07:00
Xin Dong 5d20364423 Address review comments 2019-07-30 22:24:30 -07:00
Xin Dong 1922c39377 Resolve review comments. 100K run shows one suspecious ASSERT_WE_THINK failure which I think could be a race. 2019-07-30 22:24:30 -07:00