[SERVER-43890] Remove two-phase database drops Created: 08/Oct/19  Updated: 18/May/23

Status: Backlog
Project: Core Server
Component/s: Storage
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Gregory Wlodarek Assignee: Backlog - Replication Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-43925 Proactively close newly empty databases Backlog
is depended on by SERVER-33272 The DatabaseHolder::close() function ... Closed
Related
is related to SERVER-77281 Investigate removing use of the Datab... Backlog
Assigned Teams:
Replication
Participants:

 Description   

The Database object class has no special state on it today except for the isDropPending flag used to prevent new collections from being created while waiting for all collections to be two-phased drop committed. We can eliminate the Database object entirely, potentially.

In addition, we can remove the rollback logic for the dropDatabase oplog entry and the oplog entry itself entirely. The dropDatabase command will simply two-phase drop all collections contained in the database, with nothing further to do.

This ticket depends on removing readConcernMajority=false.


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