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

Remove UninterruptibleLockGuards in replication code to allow interruptible lock acquisition

    XMLWordPrintableJSON

Details

    • Icon: Improvement Improvement
    • Resolution: Fixed
    • Icon: Major - P3 Major - P3
    • 3.7.4
    • 3.7.3
    • Replication
    • None
    • Fully Compatible
    • Repl 2018-03-26

    Description

      Since SERVER-32638, global and database locks can be interrupted when an OperationContext is killed and throw a DBException with an Interrupted error code. This includes all AutoGet helpers.

      The following places in the replication code have temporary UninterruptibleLockGuard s to prevent crashing due to inadequate exception handling:

      src/mongo/db/repl/master_slave.cpp:886
      src/mongo/db/repl/master_slave.cpp:1307
      src/mongo/db/repl/replication_coordinator_impl.cpp:1588

      Attachments

        Activity

          People

            spencer@mongodb.com Spencer Brody (Inactive)
            louis.williams@mongodb.com Louis Williams
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: