-
Type: Bug
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: 5.0.0
-
Component/s: Replication, Write Ops
-
Query Execution
-
ALL
The changes from SERVER-50778 (5.0) made it so $set applies numeric paths in numerical sort order. In 4.4, $set applies numeric paths in lexicographical sort order. https://www.mongodb.com/docs/manual/release-notes/5.0-compatibility/#update-operator-processing-order
The changes from SERVER-50778 were neither guarded on the 5.0 primary node by its feature compatibility version, nor were the changes to how the oplog entry instructions ought to be interpreted by secondaries made explicit in the oplog entry itself. This ambiguity allows a 4.4 secondary node to receive the oplog entry instructions and apply them differently than the 5.0 primary node had originally done. The reverse is also true; a 5.0 secondary node can receive the oplog entry instructions from a 4.4 primary node and apply them differently than the 4.4 primary node had originally done.
- is caused by
-
SERVER-50778 "Cannot apply $bit" when $bit update grows an array
- Closed
- is related to
-
SERVER-33687 Sort order of array indexes can determine success of an update
- Closed
-
SERVER-91064 Consider exposing field-level metrics
- Backlog
- related to
-
SERVER-88347 Test update oplog application across two major versions
- Needs Scheduling
-
SERVER-91432 Add tests involving updates on arrays with greater than 10 elements
- Backlog