[SERVER-40865] The ShardServerCatalogCacheLoader does not serialize read operations with other operations for the same collection Created: 26/Apr/19 Updated: 29/Oct/23 Resolved: 31/Aug/21 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | 5.1.0, 4.2.15, 4.0.26, 4.4.8, 5.0.2 |
| Fix Version/s: | 5.0.4, 5.1.0-rc0, 4.4.16 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Matthew Saltz (Inactive) | Assignee: | Pierlauro Sciarelli |
| Resolution: | Fixed | 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 | ||||||||
| Backport Requested: |
v5.0, v4.4, v4.2, v4.0
|
||||||||
| Sprint: | Sharding EMEA 2021-09-06 | ||||||||
| Participants: | |||||||||
| Linked BF Score: | 140 | ||||||||
| Description |
|
Reads on a collection in the ShardServerCatalogCacheLoader scheduled as part of the call to getChunksSince can conflict with other tasks scheduled for the same collection, such as drops. These should either be serialized or the read should be made to not yield. |
| Comments |
| Comment by Githook User [ 11/Jul/22 ] |
|
Author: {'name': 'Sergi Mateo Bellido', 'email': 'sergi.mateo-bellido@mongodb.com', 'username': 'smateo'}Message: |
| Comment by Vivian Ge (Inactive) [ 06/Oct/21 ] |
|
Updating the fixversion since branching activities occurred yesterday. This ticket will be in rc0 when it’s been triggered. For more active release information, please keep an eye on #server-release. Thank you! |
| Comment by Githook User [ 20/Sep/21 ] |
|
Author: {'name': 'Pierlauro Sciarelli', 'email': 'pierlauro.sciarelli@mongodb.com', 'username': 'pierlauro'}Message: |
| Comment by Githook User [ 31/Aug/21 ] |
|
Author: {'name': 'Pierlauro Sciarelli', 'email': 'pierlauro.sciarelli@mongodb.com', 'username': 'pierlauro'}Message: |
| Comment by Pierlauro Sciarelli [ 31/Aug/21 ] |
|
Considering that all the failures are due to QueryPlanKilled exceptions, going to implement a solution that simply adds this error to the ones retried by the catalog cache rather than introducing additional complexity: it's only needed an additional retry of the read to "see" eventual changes since drop is not yielding. This will also allow quick backports. |
| Comment by Ratika Gandhi [ 01/Jul/21 ] |
|
flagging this for scheduling because it has 7 BFs depended on it. It would be good to schedule this to be able to close the BFs. |