-
Notifications
You must be signed in to change notification settings - Fork 1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Browse the repository at this point in the history
Summary: Making a variety of changes to clean up the shutdown/destructor path for CDCConsumer -> CDCPoller -> TwoDCOutputClient. - Adding a separate Shutdown() function to CDCPoller and TwoDCOutputClient - CDCConsumer calls Poller shutdown on its Shutdown - Removing the `should_continue_polling` and `should_continue_polling` callbacks in cdc_poller, and having cdc_consumer handle the removals in `TriggerDeletionOfOldPollers` - Fix `CDCPoller::CheckOffline()` to actually check if the poller is offline - Ensure that CDCPoller uses `shared_from_this()` for all callbacks to ensure that the dtor doesn't run early - Change TwoDCOutputClient to use `shared_from_this()` as well to ensure we handle shutdowns during it's callbacks as well - Introduce threadpool to TwoDCOutputClient so that we don't run callbacks on the reactor threads anymore - Change shutdown_ to an atomic bool in TwoDCOutputClient - Make sure to unregister poll handles before submitting the callback to the threadpool to avoid deadlocks in shutdown Test Plan: Jenkins Reviewers: rahuldesirazu, hsunder, nicolas Reviewed By: hsunder, nicolas Subscribers: ycdcxcluster, ybase, bogdan Differential Revision: https://phabricator.dev.yugabyte.com/D19175
- Loading branch information
Showing
10 changed files
with
300 additions
and
237 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.