-
Type: Improvement
-
Resolution: Won't Do
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
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.
- is related to
-
SERVER-74542 Collapse unit tests again
- Backlog
-
SERVER-70719 Create single-test unit test binaries for local development iteration
- Backlog