sapling/eden/fs
Adam Simpkins 37fd4f5cfb add a fault injection framework
Summary:
Add a new class for injecting faults into Eden.  This will make it easier to
build tests that exercise specific error conditions or specifically control
the ordering of operations that might otherwise race.

To minimize the performance impact, the fault injection framework is disabled
by default and must be explicitly enabled at process startup using a command
line flag.  If this command line flag was not specified all fault injection
checks short-circuit into a no-op.  The `checkAsync()` version does still add
some extra overhead due to the addition of a new `folly::SemiFuture` into the
code path.

Reviewed By: wez

Differential Revision: D14079489

fbshipit-source-id: 3e8725d2e51e5c829199a602e90574424ea52636
2019-02-15 19:27:17 -08:00
..
benchharness standardize some of the benchmark infrastructure 2018-11-13 15:27:50 -08:00
config change the default ignore file path to ~/.edenignore 2019-02-07 18:31:45 -08:00
fuse Apply modernize-use-override (2nd iteration) 2019-02-14 17:29:27 -08:00
inodes add a fault injection framework 2019-02-15 19:27:17 -08:00
journal explicitly complete StreamPublisher stream on destruct 2018-10-01 13:21:59 -07:00
model make the Hash constructors constexpr 2018-12-17 19:15:36 -08:00
rocksdb add CMake build files 2018-04-30 14:37:46 -07:00
service watchman: pull in thrift in the oss build for eden support 2019-02-04 21:37:47 -08:00
sqlite avoid leaking the sqlite3 db if we fail to open it 2018-06-20 16:36:22 -07:00
store eden: hg_import_helper.py execs hg debugedenimporthelper 2019-02-14 22:27:00 -08:00
takeover Future::onError replaced with Future::thenError 2019-01-30 09:56:15 -08:00
testharness Test mount state (STARTING, RUNNING, etc.) 2019-02-15 14:34:05 -08:00
tracing eden: add missing cmake for eden/fs/tracing 2018-12-15 19:11:05 -08:00
utils add a fault injection framework 2019-02-15 19:27:17 -08:00
CMakeLists.txt eden: add missing cmake for eden/fs/tracing 2018-12-15 19:11:05 -08:00