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

Do not return $clusterTime when no keys are available

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 3.6.5, 3.7.4
    • Affects Version/s: None
    • Component/s: Sharding
    • None
    • Fully Compatible
    • v3.6
    • Sharding 2018-03-26, Sharding 2018-04-09

      The problem

      There are occasional errors while starting up mongodb replica set detailed in SERVER-31916.
      The question is if the change similar to the shell fix to wait for the clusterTime signature should be implemented in all drivers or if its possible to fix in the server.
      On the server side this call
      https://github.com/mongodb/mongo/blob/r3.7.2/src/mongo/db/service_entry_point_mongod.cpp#L289
      returns the dummy signature from mongod if the keys are not there yet. Its necessary for the proper replica set start up.

      The solution

      Its ok to not return $clusterTime if there are no keys available. The internal clients always use the internal user to communicate to each other - its a different code path. Returning no signature to external clients only in the case when auth is on will fix problems in SERVER-31916

            Assignee:
            misha.tyulenev@mongodb.com Misha Tyulenev (Inactive)
            Reporter:
            misha.tyulenev@mongodb.com Misha Tyulenev (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: