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

Fixed race conditions in the C++ driver (BackgroundJob)

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: 1.6.2
    • Fix Version/s: 1.7.2
    • Component/s: Internal Client
    • Labels:
      None
    • Operating System:
      ALL

      Description

      While using the C++ driver, my application would randomly fail to connect under load. I tracked the problem down to a race condition in BackgroundJob. I have attached a patch which fixes the race condition. The problem was the inefficient sleepmillis() loops, which would cause the connection timeout to be reached even though the connection was successful.

        Attachments

          Activity

            People

            Assignee:
            alerner Alberto Lerner
            Reporter:
            toffaletti Jason Toffaletti
            Participants:
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: