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

There are many ad-hoc interfaces and solutions for how to link mongod and mongos common code with mongod or mongos specific code, in order to avoid code duplication

    XMLWordPrintableJSON

Details

    • Catalog and Routing

    Description

      I think there are enough instances of this pattern to warrant work to provide a uniform means of achieving this.

      These are some existing means of linking mongos and mongod logic separately, along with common logic in mongos and mongod

      • mongod_main.cpp and mongos_main.cpp
        • Typically for code that only starts up in one or the other, not common code
      • Interface with factory construction method like query’s MongoProcessInterface.
      • ServiceContext has ConstructorActionRegisterer.
        • Keeps code separate in their own files, don’t need factory classes.

      Would be great to have a unified means of doing this. There are already a lot of separate instances.

      Some existing command interfaces:

      • DBDirectClient
      • ShardRegistry
      • ConfigShard

      Attachments

        Activity

          People

            backlog-server-catalog-and-routing Backlog - Catalog and Routing
            dianna.hohensee@mongodb.com Dianna Hohensee (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated: