[SERVER-35848] Use a single error code to represent routing metadata mismatch Created: 27/Jun/18  Updated: 27/Oct/23  Resolved: 13/Dec/22

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

Type: Improvement Priority: Major - P3
Reporter: Kaloian Manassiev Assignee: [DO NOT USE] Backlog - Sharding EMEA
Resolution: Gone away Votes: 0
Labels: pm-1051-legacy-tickets, sharding-common-backlog
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Sharding EMEA
Participants:

 Description   

Currently there are 3 different error codes shards can use to indicate routing metadata mismatch - StaleShardVersion, StaleEpoch and StaleConfig. Different code paths expect different of these codes and this makes it difficult to make changes to the refresh protocol.

We should consolidate them into a single error code. The most appropriate seems to be StaleConfig (13388) because this is what most code paths use currently.

In MongoDB version 4.2 we should make all code paths expect StaleConfig and then in 4.4 we can replace StaleShardVersion and StaleEpoch with StaleConfig.



 Comments   
Comment by Tommaso Tocci [ 13/Dec/22 ]

Reconciliation of these different errors have been completed under PM-2144

Generated at Thu Feb 08 04:41:12 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.