Uploaded image for project: 'Drivers'
  1. Drivers
  2. DRIVERS-268

SDAM test for race condition when seed list host name does not match the one reported by ismaster

    XMLWordPrintableJSON

Details

    • Icon: Improvement Improvement
    • Resolution: Duplicate
    • Icon: Major - P3 Major - P3
    • None
    • None
    • None

    Description

      See https://github.com/mongodb/specifications/blob/master/source/server-discovery-and-monitoring/server-discovery-and-monitoring.rst#updaterswithoutprimary.

      Given the behavior specified here, it's possible for get-more/kill-cursor requests to fail in the following scenario:

      • Create MongoClient with a seed list with IP addresses for a replica set with host names as normal DNS names.
      • Execute a query with a non-primary read preference
      • Execute a get-more for that query

      This can happen because server selection will succeed against a seed list host that reports itself as a secondary, but by the time the get-more executes, the primary has identified itself and the driver has replaced all the ip-address-specified seed list hosts with the host names from the primary's server description. The result is that server selection fails for the get-more, as the topology has "forgotten" about the seed list hosts.

      There is now an automated test for this included in the SDAM specification. You'll pick it up with this tag.

      Attachments

        Activity

          People

            jeff.yemin@mongodb.com Jeffrey Yemin
            rathi.gnanasekaran Rathi Gnanasekaran
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: