[SERVER-45483] Stale Shard Version errors are not retried if another error is returned Created: 10/Jan/20 Updated: 27/Oct/23 Resolved: 17/Jan/20 |
|
| Status: | Closed |
| 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: | Marcos José Grillo Ramirez |
| Resolution: | Gone away | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Operating System: | ALL | ||||||||||||
| Steps To Reproduce: | 1. Set up a cluster with 3 shards |
||||||||||||
| Sprint: | Sharding 2020-01-13, Sharding 2020-01-27 | ||||||||||||
| Participants: | |||||||||||||
| Linked BF Score: | 20 | ||||||||||||
| Description |
|
On the readonly_sharded test suite, the write_ops test tries all the write operations with ordered:false parameter having the shards set as read only. If the first shard is the primary, then several errors are returned and this is parsed in write_ops.cpp and changed to error MultipleErrorsOccurred (65). It should retry all the SSV errors and only leave the IllegalOperation to be parsed at the executeBatch function. Write a unittest for this. |
| Comments |
| Comment by Marcos José Grillo Ramirez [ 17/Jan/20 ] |
|
This is part of the behaviour on the execute batch functionality, changing this behaviour is non trivial, so the submitted commit will prevent the BF's |
| Comment by Githook User [ 13/Jan/20 ] |
|
Author: {'name': 'Marcos José Grillo Ramírez', 'email': 'marcos.grillo@10gen.com'}Message: Temporarily allow MultipleErrorsOccurred on read_only tests |