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

Database critical section does not serialize with ongoing refreshes

    XMLWordPrintableJSON

Details

    • Fully Compatible
    • ALL
    • v6.1, v6.0, v5.0
    • Sharding EMEA 2022-07-11, Sharding EMEA 2022-07-25, Sharding EMEA 2022-08-08, Sharding EMEA 2022-08-22, Sharding EMEA 2022-09-05
    • 20

    Description

      Consider the following scenario:

      1. A StaleDatabaseVersion error is thrown due to db version mismatch (no critical section in place)
      2. The exception is bubbled up and spawn a database refresh
      3. The database critical section is acquired
      4. The database refresh completes and installs the new db version in the DSS
      5. The critical section is released

      To guarantee correctness of the critical section we must ensure that all the refreshes started before the critical section acquisition (3.) will be invalidated and no new refreshes could start before (5.)

      Attachments

        Issue Links

          Activity

            People

              antonio.fuschetto@mongodb.com Antonio Fuschetto
              tommaso.tocci@mongodb.com Tommaso Tocci
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: