[SERVER-26760] ShardingCatalogManagerImpl::addShard() transparently passes retryable errors upstream Created: 25/Oct/16 Updated: 08/Jun/17 Resolved: 11/Nov/16 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | 3.4.0-rc1 |
| Fix Version/s: | 3.4.0-rc4 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Esha Maharishi (Inactive) | Assignee: | Esha Maharishi (Inactive) |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||
| Operating System: | ALL | ||||||||||||||||
| Sprint: | Sharding 2016-11-21 | ||||||||||||||||
| Participants: | |||||||||||||||||
| Description |
|
When attempting to validate the new shard, if any remote command fails more than the max retry number of times with a retryable error (e.g., HostUnreachable), the config server will transparently pass this error up to the mongos. This will cause the mongos to retry the _configsvrAddShard command on the config server, and if this process happens the max retry number of times, the mongos can mark the config server as failed. |
| Comments |
| Comment by Esha Maharishi (Inactive) [ 11/Nov/16 ] |
|
Note: This change wraps retriable errors as well as ExceededTimeLimit from a shard to the config server in "OperationFailed" to prevent mongos from retrying its operation on the config server. As a result, the error code reported by mongos is now OperationFailed rather than the retriable error's code or ExceededTimeLimit. |
| Comment by Githook User [ 11/Nov/16 ] |
|
Author: {u'username': u'EshaMaharishi', u'name': u'Esha Maharishi', u'email': u'esha.maharishi@mongodb.com'}Message: |