[SERVER-11290] Don't put linked products in build cache Created: 21/Oct/13  Updated: 06/Dec/22  Resolved: 21/Mar/17

Status: Closed
Project: Core Server
Component/s: Build
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Mathias Stearn Assignee: Backlog - Build Team (Inactive)
Resolution: Duplicate Votes: 0
Labels: build-needs-definition, build-planning
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by SERVER-25402 Unit tests should not depend on inter... Closed
Assigned Teams:
Build
Participants:

 Description   

Putting the executables and libraries in the cache causes severe write amplification for little if any gain. I think only .o files (and equivalents) belong in the cache.



 Comments   
Comment by Andrew Morrow (Inactive) [ 21/Mar/17 ]

This work was actually done as part of SERVER-25402.

Comment by Githook User [ 14/Jul/14 ]

Author:

{u'username': u'RedBeard0531', u'name': u'Mathias Stearn', u'email': u'mathias@10gen.com'}

Message: SERVER-11290 Don't actually build static libraries

We don't currently use the static libraries, they are just nodes in our
dependency graph. Since they are unused, building them wastes time and disk
IO.

We still need to generate the files to appease scons. They are filled with a
UUID on the assumption that if scons thinks that a library needs to be rebuilt
then anything that depends on the library should also be rebuilt.
Branch: master
https://github.com/mongodb/mongo/commit/df27bbcf24db28fa68bfd264f0d3883c0e33320e

Comment by Andy Schwerin [ 23/Oct/13 ]

Given our current build approach of linking .o files directly into binaries and shared libraries, we could replace static libraries on all platforms with files full of (obj file name, MD5 hash) pairs, and get the same effect with substantial space savings.

Generated at Thu Feb 08 03:25:24 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.