[SERVER-68229] Remove dependency of `catalog_impl` on `oplog` Created: 22/Jul/22  Updated: 29/Jul/22  Resolved: 29/Jul/22

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

Type: Task Priority: Major - P3
Reporter: Kaloian Manassiev Assignee: Kaloian Manassiev
Resolution: Won't Do Votes: 0
Labels: PM-2144-Milestone-0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-67900 Thread-through CollectionPtr into the... Closed
Sprint: Sharding EMEA 2022-07-25, Sharding EMEA 2022-08-08
Participants:

 Description   

Currently, there is a circular dependency between the `oplog` library and `catalog_impl`, which links just because the Collection class is virtual. With CRUD (or rather any writing code) being pulled out of CollectionImpl, this class will become the lowest possible denominator for operations against the catalog and it will be below the `oplog` hierarchically.

Temporarily they will have to interact through the `LocalOpLog` interface and this ticket is to perform this decoupling.



 Comments   
Comment by Kaloian Manassiev [ 29/Jul/22 ]

Per discussion with henrik.edin@mongodb.com and louis.williams@mongodb.com, we decided that we will go in the direction of exposing more CollectionImpl details as virtual on the Collection rather than doubling-down on privately using CollectionImpl directly.

With this in mind, this ticket is no longer necessary.

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