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

Listen for interrupt while waiting on the next event from the AsyncResultsMerger

    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 3.7.3
    • Affects Version/s: None
    • Component/s: Querying
    • Labels:
      None
    • Fully Compatible
    • Query 2018-02-26, Query 2018-03-12

      When the AsyncResultsMerger is blocked waiting on results from remote shards, we sometimes wait for it to finish via this overload of TaskExecutor::waitForEvent() instead of this one. The one that does not have an OperationContext cannot be interrupted by another thread, so will block until the event is signaled.

      We should switch all the call sites to use the version that takes an OperationContext, to ensure they can be interrupted and quickly cleaned up.

            Assignee:
            ian.boros@mongodb.com Ian Boros
            Reporter:
            charlie.swanson@mongodb.com Charlie Swanson
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: