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

Don't invariant in PrimaryOnlyService::lookupInstance during a lock-free read

    XMLWordPrintable

Details

    • Bug
    • Status: Closed
    • Major - P3
    • Resolution: Won't Fix
    • None
    • None
    • Sharding
    • ALL
    • Sharding NYC 2022-04-18
    • 135
    • 1

    Description

      PrimaryOnlyService::lookupInstance() invariants a list of various conditions in order to prevent a possible deadlock during the case described in SERVER-51650. This invariant currently fails if lookupInstance() is called during a lock-free read which holds the global lock in mode IS as seen in BF-24817. Since a lock-free read doesn't hold any locks which would prevent a step down, they should be excepted from the invariant.

      Attachments

        Issue Links

          Activity

            People

              brett.nawrocki@mongodb.com Brett Nawrocki
              brett.nawrocki@mongodb.com Brett Nawrocki
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: