Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Atomic processing of create/remove of keepalive thread #260

Merged
merged 1 commit into from
Feb 13, 2019

Conversation

jpechane
Copy link
Contributor

When connect() and disconnect() are called concurrently it is possible that keepalive thread is not stopped because it is created only after it was attempted to be destoryed. This leads to a leaking keepalive thread that also keeps to create and maintain an undesirable connection.

This PR thus creates and destroys keepalive thread in a single atomic block which gurantees proper ordering and removes the race condition.

@shyiko
Copy link
Owner

shyiko commented Feb 13, 2019

Thank you, Jiri! 🙇

@shyiko shyiko merged commit c43e4ea into shyiko:master Feb 13, 2019
@gunnarmorling
Copy link

gunnarmorling commented Feb 13, 2019

Hey @shyiko, thanks for the quick merge! Do you have any ETA for a new release containing this fix? We've seen multiple reports related to this recently by Debezium users, so we'd love to have a new version we could pull in.

@shyiko
Copy link
Owner

shyiko commented Feb 14, 2019

0.19.0 uploaded to Maven Central.

@gunnarmorling
Copy link

gunnarmorling commented Feb 14, 2019 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants