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

Unit tests should not depend on interpolated version info

    • Type: Icon: Improvement Improvement
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 3.3.12
    • Affects Version/s: None
    • Component/s: Build
    • Labels:
      None
    • Fully Compatible
    • Platforms 2016-08-26

      Right now, the version information is interpolated into version.cpp, which is linked into libbase. As a result, if the version information changes (as it does on every patch build), pretty much all libraries and executables must be relinked.

      However, only a few programs actually need this information - mostly the shell, the core database server, and mongos.

      If we could use dependency injection to have version reporting fall back to defaulted values, we could sever that linkage from base to the interpolated data, and then dependency inject the interpolated values only from the programs that meaningfully need it.

      This would speed up all re-links across a change in git-hash or version, but would also dramatically speed up --cache builds on the CI system.

            Assignee:
            andrew.morrow@mongodb.com Andrew Morrow (Inactive)
            Reporter:
            andrew.morrow@mongodb.com Andrew Morrow (Inactive)
            Votes:
            2 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: