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

Calls to ServerDiscoveryMonitor::requestImmediateCheck should be throttled

    XMLWordPrintable

Details

    • Bug
    • Status: Backlog
    • Major - P3
    • Resolution: Unresolved
    • None
    • None
    • Internal Code, Networking
    • None
    • ALL
    • 6

    Description

      It's possible that ServerDiscoveryMonitor::requestImmediateCheck can be called so frequently each subsequent request can cancel the previous request before it has a chance to run, leading to none of them ever succeeding.

      This flag is supposed to short circuit rescheduling when there's already an outstanding 'hello' request, but that doesn't get set until after the request is actually scheduled, which can happen at a delay from the time requestImmediateCheck is called, so that doesn't help us in this case.

      Note that this applies to both 4.4 and master so we should make sure any fix is backportable.

       

      Acceptance criteria: 

      Unit test to demonstrate the problem and add throttle to fix the test. 

      Attachments

        Issue Links

          Activity

            People

              backlog-server-sharding-nyc Backlog - Sharding NYC
              matthew.saltz@mongodb.com Matthew Saltz
              Votes:
              0 Vote for this issue
              Watchers:
              10 Start watching this issue

              Dates

                Created:
                Updated: