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

isMaster should unset the kPending tag and set the kLatestVersionInternalClientKeepOpen tag in one operation

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major - P3 Major - P3
    • 3.6.0-rc3
    • None
    • Networking
    • None
    • Fully Compatible
    • ALL
    • Query 2017-11-13
    • 0

    Description

      Before a 3.6 internal client has issued its initial isMaster command, its SessionHandle is protected from being terminated by the kPending tag. The isMaster command removes the kPending status but (when the client is new enough) adds kLatestVersionInternalClientKeepOpen status, which protects the session from being terminated by a featureCompatibilityVersion upgrade.

      However, there is a small window between the unset and the set during which there is nothing to stop a featureCompatibilityVersion upgrade from terminating the session, which is causing failed updates and inserts in the toggle_feature_compatibility.js test.

      Attachments

        Activity

          People

            justin.seyster@mongodb.com Justin Seyster
            justin.seyster@mongodb.com Justin Seyster
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: