-
Type: Improvement
-
Resolution: Unresolved
-
Priority: Minor - P4
-
None
-
Affects Version/s: None
-
Component/s: None
-
Catalog and Routing
-
Sharding EMEA 2023-07-10, Sharding EMEA 2023-07-24, Sharding EMEA 2023-08-07, Sharding EMEA 2023-08-21, Sharding EMEA 2023-09-04, Sharding EMEA 2023-09-18, Sharding EMEA 2023-10-02, Sharding EMEA 2023-10-16, Sharding EMEA 2023-10-30, CAR Team 2023-11-13, CAR Team 2023-11-27, CAR Team 2023-12-11, CAR Team 2023-12-25, CAR Team 2024-01-08, CAR Team 2024-01-22, CAR Team 2024-02-05, CAR Team 2024-02-19, CAR Team 2024-03-04
-
3
Under SERVER-67778, the range deletion code was changed to delete documents by getting a collection via `db + collection UUID` rather than simply using the namespace. Relying on the nss was not allowing to differentiate between different incarnations of the same collection and there were some workarounds in place to ensure correctness.
Purpose of this ticket is to start storing only the database name rather than the nss field: it is needed to keep at least the db name in the document because it's not possible to identify a collection only via UUID (either full namespace, either db name + collection UUID).
Proposal:
- Start writing a "dbName" field to new range deletion documents in v7.x or v8.0
- On upgrade to v8.0, add "dbName" to all documents coming "from the past" that do not contain it
- On upgrade to v8.1 remove the unused "nss" field from all range deletion docs (and re-add it on downgrade)
- is related to
-
SERVER-69792 Mandatory `keyPattern` fields for range deletions when v8.1 branches out
- Blocked