[SERVER-51712] Allow fail points to be defined in IDL Created: 16/Oct/20  Updated: 06/Dec/22  Resolved: 15/Jun/21

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Benjamin Caimano (Inactive) Assignee: Backlog - Service Architecture
Resolution: Won't Do Votes: 0
Labels: servicearch-wfbf-day
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Service Arch
Participants:

 Description   

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>



 Comments   
Comment by Matthew Saltz (Inactive) [ 15/Jun/21 ]

We think that using an IDL struct type for the BSONObj payload could be sufficient if needed.

Generated at Thu Feb 08 05:26:13 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.