[SERVER-23494] Remove link dependency of mongod on mongoscore Created: 04/Apr/16  Updated: 25/Jan/17  Resolved: 27/May/16

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

Type: Improvement Priority: Major - P3
Reporter: Kaloian Manassiev Assignee: Andy Schwerin
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Backwards Compatibility: Fully Compatible
Sprint: Sharding 12 (04/01/16), Sharding 13 (04/22/16), Sharding 14 (05/13/16), Sharding 15 (06/03/16)
Participants:

 Description   

The Chunk class contains utilities, which the router (mongos) uses for manipulating chunk metadata. It so happens that this class also contains static configuration used by mongod for chunk split decisions. In particular, the Chunk::MaxObjectPerChunk value.

Because of this dependency, mongod needs to link everything from mongos, which makes linking slow.

In order to fix this, the mongod specific parts should be pulled out of Chunk.



 Comments   
Comment by Andy Schwerin [ 27/May/16 ]

kaloian.manassiev, I no longer see any dependency between mongod and mongoscore. I tried the following simple experiments, expecting to see a linking error if the dependency existed:

(1) I removed the definition of mongoscore form the SConscript file, and successfully compiled and linked mongod
(2) I put the definition of mongoscore back, and added a duplicate symbol to version_mongos.cpp and instance.cpp, and successfully compiled and linked mongod.

Comment by Githook User [ 25/Apr/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: SERVER-23494 Move saveGLEStats into sharding_egress_metadata_hook_for_mongos

This is in order to make the mongos egress metadata hook and GLE stats
info for mongos only link in mongos.
Branch: master
https://github.com/mongodb/mongo/commit/53e4c6733ccb6ca77892641e013882da8536f313

Comment by Githook User [ 19/Apr/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: SERVER-23494 Cleanup sharding library dependencies
Branch: master
https://github.com/mongodb/mongo/commit/6ae932f89535b38d3c622c19b11882a8ab11c75a

Comment by Githook User [ 19/Apr/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: Revert "SERVER-23494 Cleanup sharding library dependencies"

This reverts commit f489fa393f3d878cc2284d1b8d13243099140dff.
Branch: master
https://github.com/mongodb/mongo/commit/1b2df3a474e57ec0ce62cf8a3d053fbac7cc6d47

Comment by Githook User [ 19/Apr/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: SERVER-23494 Cleanup sharding library dependencies

Also saveGLEStats into sharding_egress_metadata_hook_for_mongos on the way
to move mongos-specific dependencies to bel inked in mongos only.
Branch: master
https://github.com/mongodb/mongo/commit/f489fa393f3d878cc2284d1b8d13243099140dff

Comment by Githook User [ 06/Apr/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: SERVER-23494 Put back dependency of core on coreshard
Branch: master
https://github.com/mongodb/mongo/commit/86f3020544e76a3ecb78879dd07c348c03807b14

Comment by Githook User [ 05/Apr/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: SERVER-23494 Move VersionManager under sharding_client

It belongs together with ShardConnection and should not be part of
coreshard.
Branch: master
https://github.com/mongodb/mongo/commit/5b638913862fa8e055f0eeb48f616519379a1bb5

Comment by Githook User [ 05/Apr/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: SERVER-23494 Remove link dependency of mongod on coreshard
Branch: master
https://github.com/mongodb/mongo/commit/e647e4a383dea9e0c5b2b069d2641be83c19c1a7

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