Details
-
Bug
-
Resolution: Fixed
-
Major
-
Cheshire-Cat
-
Triaged
-
1
-
No
Description
When using FollyExecutorPool there is an intermittent hang in CV tests during bucket shutdown. This results in the test suite timing out.
The hang occurs when a bucket is being shutdown and we attempt to schedule a new task via ExecutorPool::schedule().
The problem is caused by the way FollyExecutorPool::unregisterTaskable is implemented:
- Mark all scheduled tasks as cancelled.
- Waits for all tasks to complete cancellation (be removed from taskOwners).
However, if another, new task is attempted to be scheduled between (1) and (2) then it effectively "misses" the cancellation, and (2) will wait forever.
Attachments
Issue Links
- blocks
-
MB-36956 Migrate to Facebook Folly executors for CPU & IO background tasks
- Closed