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

MongoRunner should use correct SSL configuration to connect to the processes it starts

    • Type: Icon: Improvement Improvement
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 3.1.6
    • Affects Version/s: None
    • Component/s: Testing Infrastructure
    • Labels:
      None
    • Fully Compatible
    • Platform 6 07/17/15

      MongoRunner is a test fixture used in our jstest suite to start Mongo processes.

      After MongoRunner launches a mongo process, it detects that it is ready for connections by repeatedly creating a new Mongo object in a loop. Note that the Mongo object inherits the SSL configuration of the shell that created it.

      As creating a Mongo object previously did nothing but open a socket to the remote server, this test worked regardless of whether the shell was enabled to connect with SSL, even if the MongoDB instance it started was configured to only accept connections with SSL.

      As part of SERVER-19035, DBClientConnection, the C++ object exposed to javascript through the Mongo object, was changed to call 'isMaster' after connecting. This breaks SSL tests (ssl_crl.js, ssl_mixedmode.js) that start MongoDB instances with different SSL configurations than the underlying shell.

      To fix this, we will need to change MongoRunner.startWithArgs to instead repeatedly attempt to launch a new mongo shell with the correct SSL configuration to connect to the newly started server.

            Assignee:
            adam.midvidy Adam Midvidy
            Reporter:
            adam.midvidy Adam Midvidy
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: