[SERVER-79442] Update command may send mirrored reads without filter, hint or collation Created: 27/Jul/23 Updated: 01/Aug/23 |
|
| Status: | Backlog |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Wenbin Zhu | Assignee: | Backlog - Service Architecture |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | techdebt | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Assigned Teams: |
Service Arch
|
| Operating System: | ALL |
| Participants: |
| Description |
|
Currently update command only sets _updateOpObj when the `updates` DocumentSequence is present in OpMsg. However this is often not the case, especially due to |
| Comments |
| Comment by Wenbin Zhu [ 28/Jul/23 ] |
|
Yeah I also suspected internal update commands being one of the reason. |
| Comment by Kaitlin Mahar [ 28/Jul/23 ] |
|
wenbin.zhu@mongodb.com Ah I see. Thanks. Yes, there are a lot of failures. I know there are some cases mongod generates update commands internally like for aggregate with $merge so that could explain some of the failures. |
| Comment by Wenbin Zhu [ 28/Jul/23 ] |
I observed this because I changed this code to invariant that the `updates` DocumentSequence is always present in OpMsgRequest (patch), and I saw a lot of failures in the canary patch build where the replica set tests are also failing, but I'm not clear about the reason behind. |
| Comment by Kaitlin Mahar [ 28/Jul/23 ] |
Can you clarify in what case that happens in a replica set? Who is sending the command to the primary? |
| Comment by Wenbin Zhu [ 27/Jul/23 ] |
|
Moreover |
| Comment by Wenbin Zhu [ 27/Jul/23 ] |
|
A couple of point from the offline discussion with amirsaman.memaripour@mongodb.com:
|