Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fixed lifecycle issue with TxCommitProcess
Issue resulted in a master instance being healthy but unable to commit any transactions because it's TransactionCommitProcess was not properly switched on. Commit process is switched on from a CommitProcessSwitcher which registers itself as a listener in HighAvailabilityModeSwitcher. Latter class notifies all registered listeners during slave and master switches. Whole clustering infrastructure started up and begin communication with other machines concurrently with listener registration. This resulted in a race between listener registration and notification. This commit puts all ModeSwitcher listeners in a separate LifeSupport instance which is started before clustering and paxos. Such startup sequence ensures that all listeners are registered before clustering communication starts. Co-authored-by: @MishaDemianenko
- Loading branch information
Showing
5 changed files
with
100 additions
and
93 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
Oops, something went wrong.