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

Create optional unified unittest binary reasonable static builds

    • Type: Icon: Improvement Improvement
    • Resolution: Won't Do
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None
    • Server Development Platform

      We currently build 100+ unittest binaries. This is a problem on static builds, where each unittests links in almost all of the libraries (and therefore a massive amount of debug info). The unittests take prohibitively long to build an require a large amount memory and diskspace.

      A simple fix to this problem is to build a single unittests binary which encompasses all the unittest binaries. Our unittest framework is already setup to handle this, as a specific test can be selected from a given binary. This will significantly reduce time, memory and diskspace requirements for building all the unittests. It will also reduce runtime of the tests them selves if the unittest binary is ran directly (instead of selecting individual tests) as the program data is loading into memory once instead of 100+ times.

      This could be implemented seamlessly in the sconscripts, so that each unittests does not need to change. only mongo_unittest.py would need significant changes.

      The same concept could be applied to the benchmark and integration tests.

            Assignee:
            daniel.moody@mongodb.com Daniel Moody
            Reporter:
            daniel.moody@mongodb.com Daniel Moody
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: