-
Type: Improvement
-
Resolution: Won't Do
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Labels:
-
Service Arch
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>