[SERVER-74001] Replace MaxTimeMSExpired with ReadConcernMajorityNotAvailableYet during speculative majority Created: 14/Feb/23  Updated: 15/Feb/23  Resolved: 15/Feb/23

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Minor - P4
Reporter: Moustafa Maher Assignee: Backlog - Replication Team
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on SERVER-68328 Add ResumableChangeStreamError label ... Closed
Assigned Teams:
Replication
Participants:

 Description   

For v4.4 only.
We wait 15 seconds waiting for the local snapshot to be majority committed then we return MaxTimeMSExpired on failure which is not a transient error so drivers don't retry on them specially that these 15 seconds got applied on commands that doesn't specify maxTimeMS in the first place for example: getMore running on pre-v5.0 versions with emrc=false

SERVER-68328 made ReadConcernMajorityNotAvailableYet as a transient error and now it is a more suitable to be used here.

SERVER-68328 should be backported first to v4.4.


Generated at Thu Feb 08 06:26:13 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.