[SERVER-41842] Apply unit test binary collapse to tests under src/mongo/db/storage Created: 20/Jun/19  Updated: 29/Oct/23  Resolved: 16/Sep/19

Status: Closed
Project: Core Server
Component/s: Testing Infrastructure
Affects Version/s: None
Fix Version/s: 4.3.1

Type: Improvement Priority: Major - P3
Reporter: Andrew Morrow (Inactive) Assignee: Xiangyu Yao (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Backwards Compatibility: Fully Compatible
Sprint: Execution Team 2019-09-09, Execution Team 2019-09-23
Participants:

 Description   

In SERVER-41809, we collapsed the unit tests on a per-directory basis in order to improve the build time for the statically linked unit tests, particularly on Windows. However, the collapse was not applied under src/mongo/db/storage, since those tests have specialized setup that renders them incompatible with living together within one binary.

We should investigate how much additional build time savings would result from combining them. If there is real savings, we should undertake the work to make the unit tests compatible with collapse and collapse them.

Doing so would probably also simplify the tests themselves.



 Comments   
Comment by Githook User [ 16/Sep/19 ]

Author:

{'username': 'xy24', 'email': 'xiangyu.yao@mongodb.com', 'name': 'Xiangyu Yao'}

Message: SERVER-41842 Collapse unit tests under storage
Branch: master
https://github.com/mongodb/mongo/commit/e8a57efe63c2f40b0713e49fd7437e2d2c21cbda

Comment by Dianna Hohensee (Inactive) [ 20/Jun/19 ]

From Drew on how to collapse the unit tests (without making them work, mind) to quantify the compile time gain:
"
Yeah, it is very mechanical
Just make a new unit test binary, call it `path_to_this_dir_test`
Then merge in all the `_test.cpp` files from the directory as the `sources`
And then merge all of the `LIBDEPS` from each test into the new tests `LIBDEPS`
Sort and uniq those
Then patch queue the build time (edited)
"

Generated at Thu Feb 08 04:58:49 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.