[SERVER-78917] Relax condition in a router loop in shard_version_retry Created: 13/Jul/23 Updated: 12/Jan/24 Resolved: 20/Jul/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 7.1.0-rc0, 7.0.2 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Sergi Mateo Bellido | Assignee: | Sergi Mateo Bellido |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | shardingemea-qw | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||
| Operating System: | ALL | ||||||||
| Backport Requested: |
v7.0, v6.0, v5.0
|
||||||||
| Sprint: | Sharding EMEA 2023-07-24 | ||||||||
| Participants: | |||||||||
| Linked BF Score: | 105 | ||||||||
| Story Points: | 1 | ||||||||
| Description |
|
The invariant on the shard_version_retry::shardVersionRetry router loop is probably a bit too strict: it assumes that if we route a request over some nss, any Stale* error is going to be over that namespace. This is not always true, as we recently saw in this other router loop that we relaxed some weeks ago. Note that the router loop being addressed here is only used as an internal helper. Thus, at this point we are going to relaxed a bit to properly support timeseries collections (i.e. I route over dbName.collName but got an error over dbName.system.buckets.collName. |
| Comments |
| Comment by Githook User [ 30/Aug/23 ] |
|
Author: {'name': 'Sergi Mateo Bellido', 'email': 'sergi.mateo-bellido@mongodb.com', 'username': 'smateo'}Message: (cherry picked from commit 339eb44975cb119748b4ab8d9c4fa5b4c74be7d0) |
| Comment by Githook User [ 19/Jul/23 ] |
|
Author: {'name': 'Sergi Mateo Bellido', 'email': 'sergi.mateo-bellido@mongodb.com', 'username': 'smateo'}Message: |