-
Type: Bug
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Storage Execution
-
ALL
-
A timeseries collection is really a view on top of an underlying 'system.buckets.<tsCollName>' collection.
Running dropIndexes() on the timeseries view namespace with its underlying buckets collection's UUID doesn't return CollectionUUIDMismatch.
This contradicts standard 'view' behavior where a CollectionUUIDMismatch would be returned with the 'expectedCollection' being the view name provided in the command.
Example behavior on a normal view:
db.students.insertMany([ {sID: 22001, name: "Alex", year: 1, score: 4.0}, {sID: 21001, name: "bernie", year: 2, score: 3.7}, {sID: 20010, name: "Chris", year: 3, score: 2.5}, {sID: 22021, name: "Drew", year: 1, score: 3.2}, {sID: 17301, name: "harley", year: 6, score: 3.1}, {sID: 21022, name: "Farmer", year: 1, score: 2.2}, {sID: 20020, name: "george", year: 3, score: 2.8}, {sID: 18020, name: "Harley", year: 5, score: 2.8}, ]); db.createView("firstYears", "students", [{$match: {year: 1}}]); const studentsUUID = db.getCollectionInfos({name: "students"})[0].info.uuid; // Running CRUD on the 'view' with the underlying collection's UUID fails db.runCommand({find: "firstYears", collectionUUID: studentsUUID}) uncaught exception: Error: command failed: { "ok" : 0, "errmsg" : "Collection UUID does not match that specified", "code" : 361, "codeName" : "CollectionUUIDMismatch", "db" : "test", "collectionUUID" : UUID("ea08dba4-80a7-4bff-bc0f-8a1dc62812fd"), "expectedCollection" : "firstYears", "actualCollection" : "students" }
- is related to
-
SERVER-87449 dropIndexes() CollectionUUIDMismatch has incorrect 'expectedCollection' on timeseries view
- Backlog