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

Eliminate duplicate symbols between mongod and mongos files

    • Type: Icon: Improvement Improvement
    • Resolution: Incomplete
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Internal Code
    • Labels:
      None
    • Sharding

      Currently it is not possible to link an executable before it decides if it wants to be a mongod or a mongos.

      The underlying reason is that some symbols are implement in one way in a mongod and in a different way in a mongo's. There are three reasons I can list for that (I'll attach a list of symbols after this; I just want to get a JIRA number for this now.)
      1. some commands that should behave accordingly (e.g., listDatabases)
      2. some symbols have no reason to exist if in a mongod (e.g, see everything that's on s/s_only.cpp)
      3. some symbols just belong at once to two different libraries in SConstruct (e.g.

      Implications of this approach are several, the one that motivated this JIRA in particular is that writing dbtest for mongos code is a bit tricky today, perhaps possible, but with too many link-related pitfalls.

      A suggestion here is to address 1-3 above, in particular making it easier to enrich the dbtest/ directory as we go.

            Assignee:
            backlog-server-sharding [DO NOT USE] Backlog - Sharding Team
            Reporter:
            alerner Alberto Lerner
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: