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

clientcursormon should acquire locks in a way that cannot throw

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 3.7.4
    • Affects Version/s: None
    • Component/s: Querying
    • Labels:
      None
    • Fully Compatible
    • ALL
    • Query 2018-03-26
    • 22

      Currently the background thread will use AutoGetCollectionForReadCommand, which will throw if the operation is interrupted for any reason. This can happen if the server starts its shutdown sequence, in which case all operations are interrupted, including the background thread.

      Specifically, we should use the UninterruptibleLockGuard class to prevent exceptions from being thrown.

      We should probably also move away from that particular db_raii helper, since it will have some side-effects like increasing the Top stats, etc.

            Assignee:
            charlie.swanson@mongodb.com Charlie Swanson
            Reporter:
            charlie.swanson@mongodb.com Charlie Swanson
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: