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

Make DatabaseName constructors private

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 7.1.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • Labels:
    • Serverless
    • Fully Compatible
    • Server Serverless 2023-04-17, Server Serverless 2023-05-01
    • 5

      In order to enforce the correct behavior every time we construct a DatabaseName, we need to check global options. We must check these options from outside the DBN class itself, so we'll privatize the constructors and enforce construction through DatabaseNameUtil (which will need to be a friend class). There are some places that we construct a DBN today that are not yet ready for the behavior checks to be enforced, specifically some parts of the auth system. We may need to create specific functions to allow these to be constructed for now, and leave TODOs to remove those functions in the future.

            mathis.bessa@mongodb.com Mathis Bessa (Inactive)
            janna.golden@mongodb.com Janna Golden
            0 Vote for this issue
            2 Start watching this issue