[SERVER-31242] findAndModify no-op retry should respect the fields option Created: 25/Sep/17 Updated: 30/Jan/24 |
|
| Status: | Open |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | 3.6.0-rc1 |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Jack Mulrow | Assignee: | Backlog - Query Execution |
| Resolution: | Unresolved | Votes: | 3 |
| Labels: | todo_in_code | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||||||||||||||
| Assigned Teams: |
Query Execution
|
||||||||||||||||||||||||||||||||||||
| Operating System: | ALL | ||||||||||||||||||||||||||||||||||||
| Sprint: | Query 2019-12-02, Query 2019-12-30, Query 2020-01-13, Query Execution 2021-04-05, Query Execution 2021-04-19 | ||||||||||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||||||||||
| Description |
|
findAndModify can accept a "fields" option that determines which fields to return in the value object (like projection). Right now when reconstructing the findAndModify response, we don't account for this option. Instead, if "fields" is given we should filter the response to include the specified fields only. Failing retryable_writes_jscore_passthrough tests:
|
| Comments |
| Comment by Kyle Suarez [ 02/Jun/23 ] |
|
After discussion with bernard.gorman@mongodb.com, moving this ticket to the quick wins bucket but noting that this is likely on the larger size of a potential quick win. |
| Comment by Kyle Suarez [ 02/May/23 ] |
|
Kyle to discuss this with Bernard at the director triage. We think that it would be worth someone with experience in this area to take a look at the current state of affairs before we action on this ticket (either scheduling soon, putting it into the quick wins bucket, etc.) |
| Comment by Mindaugas Malinauskas [ 08/Apr/21 ] |
|
Since we decided that proceeding with this ticket makes sense after "Reduce oplog entry size of retryable findAndModify operations" project, moving to Open. |
| Comment by Ethan Zhang (Inactive) [ 07/Apr/21 ] |
|
Andy recently wrote a scope: PM-2213 Reduce oplog entry size of retryable findAndModify operations. This project proposed that we can store the document post-image in a separate collection instead of the oplog entry. The issue with the oplog entry size can be mitigated in this way. So we want to put this issue off for the moment. The issue with the field option being ignored is not part of the goals for Andy's project. After a discussion, we think it should be OK to wait for Andy's project to be completed and then come back to the field option issue. |
| Comment by Asya Kamsky [ 19/Jan/20 ] |
|
I couldn't find one, so I filed |
| Comment by Asya Kamsky [ 19/Jan/20 ] |
|
Is there a separate ticket to store only the needed fields (ones that were returned by original findAndModify) in the oplog rather than the full document? That seems like a better fix than trying to apply the projection when retrying the operation... |