-
Type:
Improvement
-
Resolution: Won't Do
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Service Arch
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Our fail points take in a schema-less BSON data object (see here). This means that to understand how to specify a fail point, both SERVER and DRIVERS engineers have no choice but to read the code where the fail point is used. We can leverage IDL to optionally enforce a strict schema on fail points instead.
fail_points:
hangBeforeFooBar:
description: Block while enabled in the fooest bar
failCommandLite:
description: Fail the given commands
fields:
errorCode:
description: The code to use for the failure
type: int
failCommands:
description: The command names to fail
type: array<string>