Details
-
Task
-
Status: Closed
-
Major - P3
-
Resolution: Fixed
-
None
-
Fully Compatible
-
Sharding 2020-12-28
-
2
Description
It is possible for the future returned by ReshardingDonorOplogIterator::getNext() to only become ready after opCtx would have been destructed. This won't happen while ReshardingDonorOplogIterator::_waitForNewOplog() always returns an immediately ready future, but would become an issue as soon as the returned future wasn't immediately ready. It isn't practical for ReshardingDonorOplogIterator::_waitForNewOplog() to always return an immediately ready future because the donor iterator may reached the end of the oplog buffer and need to wait for an insert notification from the ReshardingOplogFetcher.
Attachments
Issue Links
- related to
-
SERVER-53538 Clarify semantics of when destructor runs for ExecutorFuture chains
-
- Closed
-