Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-70127

Default system operations to be killable by stepdown

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major - P3
    • Resolution: Unresolved
    • None
    • None
    • None
    • Replication

    Description

      There are currently 30ish non-test calls to setSystemOperationKillableByStepdown(). Every time we introduce a new thread, there’s a non-obvious requirement to call that function.

      Failing to do so results in the process crashing if the operation hits a prepare conflict. This is a rare occurence, which means we risk not catching crashing bugs in testing. In addition to the visual clutter, the API risks that developers create new internal threads that are unkilllable when they shouldn't be.

      It seems that there are only a few system operations that actually need to be unkilllable and the vast majority of all threads should be killable.

      We should consider changing the default such that system operations are always killable and have the limited set of special operations explicitly opt-in to being unkillable.

      Attachments

        Issue Links

          Activity

            People

              backlog-server-repl Backlog - Replication Team
              louis.williams@mongodb.com Louis Williams
              Votes:
              1 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated: