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

Compare exhaust iters before erasing

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.4.0-rc7, 4.7.0
    • Affects Version/s: None
    • Component/s: Sharding
    • None
    • Fully Compatible
    • ALL
    • v4.4
    • Sharding 2020-05-18
    • 11

      When running the callback function for an exhaust task, the thread pool task executor currently erases this task from its queue using an iterator and then checks to see if this iterator is equal to another. The iterator may be invalidated after erasing, so we should compare the iters before erasing. The order of the two does not actually matter as all of this happens while holding a mutex.

            Assignee:
            janna.golden@mongodb.com Janna Golden
            Reporter:
            janna.golden@mongodb.com Janna Golden
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: