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

Deadlock in ConfigServerTestFixture::setUpAndInitializeConfigDb

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.3.1
    • Component/s: None
    • Labels:
      None

      Description

      Scenario:

      T1 = main test thread
      T2 = DistLockPinger thread

      T1 calls ConfigServerTestFixture::setUpAndInitializeConfigDb.
      T1 acquired rstl in mode IX, and acquired config db in mode X.
      T2 tries to get config db in IX, successfully acquired rstl in mode IX but is blocked for db since T1 has it in mode X.
      T1 tries to upgrade rstl to mode X, gets blocked since T2 has it in mode IX.

      To reproduce, simply add a sleep after acquiring db in mode X.

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: