Uploaded image for project: 'Documentation'
  1. Documentation
  2. DOCS-11642

Docs for SERVER-34243: listCollections should not require a MODE_S database lock

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 3.7.6, 3.6.21
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None

      Description:

      listCollections only requires intent locks (MODE_IS).

      Scope of changes:

      • 4.0.txt
      • db.CollectionInfos + db.collectionNames (double check how we phrase nameOnly – IS lock)
      • command/listCollections.txt

      Impact to other docs outside of this product:

      MVP:

      Resources:

      Engineering Ticket Description:

      Currently the listCollections command requires a MODE_S lock on the database it's run on. When any transaction is active on that database, it will generally have a MODE_IX lock on a collection. This will conflict with the MODE_S lock on the database, causing listCollections to block until the transaction is finished or aborted.

      It should be sufficient to have the MODE_IS lock on the database, as long as each collection is locked as its details are gathered.

            Assignee:
            kay.kim@mongodb.com Kay Kim (Inactive)
            Reporter:
            kay.kim@mongodb.com Kay Kim (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved:
              5 years, 45 weeks ago