[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:
Related
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
2. Cause a refresh after the findAndModify is retried within a transaction

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.


Generated at Thu Feb 08 05:30:56 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.