[SERVER-30815] Migrate library dependencies to LIBDEPS_PRIVATE Created: 24/Aug/17  Updated: 30/Oct/23  Resolved: 17/Dec/20

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

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

Issue Links:
Depends
depends on SERVER-29908 Libraries db/s/sharding and db/query/... Closed
is depended on by SERVER-30955 dynamically linked mongod fails to st... Closed
Duplicate
duplicates SERVER-52583 libdeps graph linter: public that sho... Closed
is duplicated by SERVER-29905 Libraries s/coreshard and s/client/sh... Closed
is duplicated by SERVER-29907 Dependency tangle within query subsystem Closed
Problem/Incident
Related
related to SERVER-29908 Libraries db/s/sharding and db/query/... Closed
Backwards Compatibility: Fully Compatible
Sprint: Platforms 2018-01-01, Platforms 2018-01-15, Platforms 2018-08-27, Platforms 2018-09-10, Dev Tools 2018-11-19, Dev Platform 2020-11-16, Dev Platform 2020-11-30, Dev Platform 2020-12-14, Dev Platform 2020-12-28
Participants:
Linked BF Score: 95

 Description   

For every library in the system, move its declared LIBDEPS to LIBDEPS_PRIVATE, and selectively re-promote only those libraries found to form part of the interface.



 Comments   
Comment by Githook User [ 16/Dec/20 ]

Author:

{'name': 'Daniel Moody', 'email': 'daniel.moody@mongodb.com', 'username': 'dmoody256'}

Message: SERVER-30815 Added linter to check for unnecessary PUBLIC libdeps, and added schema versioning.
Branch: master
https://github.com/mongodb/mongo/commit/6425c5740002ffd27f2682023b7ff36fba7af1ac

Comment by Githook User [ 27/Nov/18 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-30815 Remove the mongodmain library
Branch: master
https://github.com/mongodb/mongo/commit/99ec5dabaf1286a5440da0bb561e32d3aa79466a

Comment by Githook User [ 27/Nov/18 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-30815 Remove the db/serveronly library
Branch: master
https://github.com/mongodb/mongo/commit/bac586e913dae042f6c2957522ac319e55946df9

Comment by Githook User [ 27/Nov/18 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-30815 Remove db/serveronly from dbtest
Branch: master
https://github.com/mongodb/mongo/commit/865317f4ec75b34dfec3ef39c54cb3f274ffd3a5

Comment by Githook User [ 27/Nov/18 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-30815 Remove the mongodmain library
Branch: master
https://github.com/10gen/mongo-enterprise-modules/commit/c7702345c737a286a534aeaa35dc56e95355f94c

Comment by Githook User [ 17/Nov/18 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-30815 Updates to keep up with community changes around db/serveronly
Branch: tongo
https://github.com/10gen/mongo-enterprise-modules/commit/ba86f99fc9ba56d5074fae762cc96feadfbfb4e7

Comment by Githook User [ 14/Nov/18 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-30815 Remove db/serveronly from all unit tests
Branch: master
https://github.com/mongodb/mongo/commit/8029241ffa616d27502f9396c50a85b95115beaf

Comment by Githook User [ 14/Nov/18 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-30815 Updates to keep up with community changes around db/serveronly
Branch: master
https://github.com/10gen/mongo-enterprise-modules/commit/ba86f99fc9ba56d5074fae762cc96feadfbfb4e7

Comment by Githook User [ 20/Aug/18 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-30815 The db/serveronly library no longer exports library edges
Branch: master
https://github.com/mongodb/mongo/commit/cad80a22a034c3f6c551529a9e6331a50dc8fde7

Comment by Githook User [ 13/Jan/18 ]

Author:

{'email': 'acm@mongodb.com', 'name': 'Andrew Morrow', 'username': 'acmorrow'}

Message: SERVER-30815 Add some missing LIBDEPS edges
Branch: master
https://github.com/mongodb/mongo/commit/20258d04c3bb4352c84af091bca1d404dac9cfee

Comment by Githook User [ 12/Jan/18 ]

Author:

{'email': 'acm@mongodb.com', 'name': 'Andrew Morrow', 'username': 'acmorrow'}

Message: SERVER-30815 Add missing libdep for non-enterprise builds
Branch: master
https://github.com/mongodb/mongo/commit/11225541cbbaed58e27ff5254c145dd834a86190

Comment by Githook User [ 11/Jan/18 ]

Author:

{'email': 'acm@mongodb.com', 'name': 'Andrew Morrow', 'username': 'acmorrow'}

Message: SERVER-30815 Refactor libraries to reduce cycles

  • Merge db/s/split_vector and db/s/split_chunk into db/s/sharding, since they
    were directly mutually cyclic with it.
  • Split db/index/index_access_method out of db/index/index_access_methods, so
    that libquery_exec can use the abstract class without needing to know about the
    detailed implementations
  • Combine db/clientcursor, db/query/ {query,internal_plans}

    ,
    db/exec/exec, parts of db/write_ops, and
    db/pipeline/serveronly_pipeline, into a new db/libquery_exec library.

  • Split a new library s/grid out of s/coreshard, and fold the parts of
    s/client/sharding_client into s/grid that were cyclic with coreshard, solving
    this cycle.
  • Adds/removes a few stray LIBDEPS here or there as needed to make the above
    transformations work.

After making this transformation, we will be left with one important cycle: the
new db/libquery_exec is still cyclic with db/s/sharding
Branch: master
https://github.com/mongodb/mongo/commit/9d1f323a131ba5e3e1af79973ae79910de10a957

Comment by Githook User [ 04/Jan/18 ]

Author:

{'name': 'Andrew Morrow', 'username': 'acmorrow', 'email': 'acm@mongodb.com'}

Message: SERVER-30815 Add some missing libdeps edges currently acquired via serveronly
Branch: master
https://github.com/mongodb/mongo/commit/d30bf0ec032318c90952738eaa1c1c0ed1ea040c

Comment by Githook User [ 04/Jan/18 ]

Author:

{'name': 'Andrew Morrow', 'username': 'acmorrow', 'email': 'acm@mongodb.com'}

Message: SERVER-30815 The debugger library should be private to base
Branch: master
https://github.com/mongodb/mongo/commit/6eeca9e35e1f4b4e1776e3a5423c6b058ca0839b

Comment by Githook User [ 29/Dec/17 ]

Author:

{'name': 'Andrew Morrow', 'username': 'acmorrow', 'email': 'acm@mongodb.com'}

Message: SERVER-30815 Add missing libdep to CAPI transport
Branch: master
https://github.com/mongodb/mongo/commit/d6eab87cb1792ecea387bb35e14a797f0e639770

Comment by Githook User [ 20/Dec/17 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-30815 Make mongodbmain library non-exporting
Branch: master
https://github.com/mongodb/mongo/commit/efceb3c07f16be79d46b66c2f2a8cf28e617ba24

Comment by Githook User [ 19/Dec/17 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-30815 Library injections via LIBDEPS_DEPENDENTS should be private

But provide a way to force them public when needed
Branch: master
https://github.com/mongodb/mongo/commit/263b5b2cb3f808d3ba0f0e61894dd0f5f8874fbc

Comment by Githook User [ 19/Dec/17 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-30815 Injection to audit libraries should be public
Branch: master
https://github.com/10gen/mongo-enterprise-modules/commit/a7948db452794011eb717abb7d7e5eaafd5e3a4c

Comment by Githook User [ 15/Dec/17 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-30815 Injections for mongod should adhere to the mongodbmain library
Branch: master
https://github.com/mongodb/mongo/commit/5d43961ca1ae0436d851744bf75b9d530469491d

Comment by Githook User [ 15/Dec/17 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-30815 Injections for mongod should adhere to the mongodbmain library
Branch: master
https://github.com/10gen/mongo-enterprise-modules/commit/783e021e325a9d15679f02ae5002875620aaf3b1

Comment by Githook User [ 22/Sep/17 ]

Author:

{'email': 'garen@tychoish.com', 'name': 'tycho garen', 'username': 'tychoish'}

Message: SERVER-30815: fix string reprepresentation of libdeps library
Branch: master
https://github.com/mongodb/mongo/commit/9b90669185b95ff2f868b4fab8b3be3273fa2801

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