[SERVER-53441] Transient Transaction errors after a WouldChangeOwningShard make findAndModify to fail Created: 18/Dec/20 Updated: 12/Dec/23 |
|
| Status: | Backlog |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Marcos José Grillo Ramirez | Assignee: | Backlog - Cluster Scalability |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | Sharding-NYC | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||
| Assigned Teams: |
Cluster Scalability
|
||||
| Operating System: | ALL | ||||
| Steps To Reproduce: | 1. Execute a findAndModify as a retryableWrite on a document's shard key in a way it would change the owning shard |
||||
| Participants: | |||||
| Description |
|
The cluster's find and modify code retries using a transaction if a findAndModify with a retryable write fails with a WouldChangeOwningShard error. However it is not retrying if the transaction fails with a transient transaction error. Something similar to SERVER-53199 could be implemented to automatically retry and prevent that a refresh on the shard makes the findAndModify operation to fail. |