- delete asserts if getsetdup identifies a dup, however a duplicate location is possible if the original document was removed and its record was reused for a new document
- update and delete have a policy of avoiding a full yield by advancing to a subsequent record before a record is modified. This will not work correctly if advance() transitions to a new $or clause that has a basic cursor pointing at the document that will be deleted/updated. (With a basic cursor, the noteLoc() / checkLoc() code won't help - the cursor needs to be advanced beyond the modification point.)
- related to
-
SERVER-5725 streamline cursor advancement on write
- Closed
-
SERVER-60264 clean up orp.js
- Closed