[SERVER-32868] Mobile SE: Improve the logic to retry failed drops Created: 24/Jan/18  Updated: 27/Oct/23  Resolved: 21/Jun/18

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

Type: Improvement Priority: Major - P3
Reporter: Sulabh Mahajan Assignee: Backlog - Storage Execution Team
Resolution: Works as Designed Votes: 0
Labels: nonnyc, storage-engines
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to SERVER-32675 Investigate database locked concurren... Closed
Assigned Teams:
Storage Execution
Participants:

 Description   

With Mobile SE drop fails (as expected) when a cursor is open. With WiredTiger this is dealt by ignoring the error returned and postponing the drop till all cursors on the collection close. Changes for SERVER-32675 introduced logic to retry these drops. Drops get queued on failure and get retried at the end of each session.

This logic needs more work in improving it's efficiency. This ticket tracks that work.



 Comments   
Comment by Sulabh Mahajan [ 21/Jun/18 ]

Initially I had put a simple fix inspired with how WiredTiger handles the drops failing with busy. I had created this ticket to go over the fix and see if there is a potential to improve it. We went over the retry logic and found the logic efficient and couldn't identify areas of improvement.

I am closing this ticket as the relevant code is working as designed.

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