-
Type: Bug
-
Resolution: Gone away
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Storage Execution
-
ALL
This dassert that enforces that recordIds are strictly increasing seems like it can be triggered by clustered collections.
Not sure how that hasn't happened already, and if it's impossible to be triggered, why is that the case?
Edit: see comments for why it's not possible on clustered collections.
We still need to fix this for replicated recordIds. Easy way to reproduce this bug:
db.runCommand({create: "newcoll", recordIdsReplicated: true}); let ops = []; for (let i = 0; i < 100; i++) { ops.push({ op: 'i', ns: "test.newcoll", o: { _id: i - 1000, }, o2: { _id: i - 1000, }, rid: 100 - i }); } db.runCommand({ applyOps: ops });
The secondary will crash on the dassert.
- is related to
-
SERVER-88375 Initial sync / secondary oplog application don't update _nextId for recordId
- Open
- related to
-
SERVER-88577 Consider sorting documents by recordId before applying entries on secondaries
- Backlog