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

Target-only Kafka connection remains "open" even if Kafka broker is not available. #1273

Closed
jufickel-b opened this issue Jan 14, 2022 · 0 comments · Fixed by #1278
Closed
Assignees
Labels
Milestone

Comments

@jufickel-b
Copy link

A Kafka connection without sources does no regular poll and thus cannot detect whether the broker is available.

This means a Kafka connection with only targets remains open even if Kafka broker is not available.
Such a connection should be marked as "misconfigured".
As it is not possible to detect this state pre-emptively it should be detected at least with the first sent message that times out.

@jufickel-b jufickel-b self-assigned this Jan 14, 2022
jufickel-b pushed a commit to bosch-io/ditto that referenced this issue Jan 18, 2022
…PublisherActor.

Until now a Ditto Kafka connection with targets only did not cope properly with the Kafka broker becoming unavailable.
In such cases, publishing timed out and produced appropriate entries in connection log.
Connection live status however, remained always 'open'.
With this commit, a TimeoutException while publishing is handled in a way that a ConnectionFailure is propagated to parent BaseClientActor.
This sets connection live status to 'misconfigured' and triggers reconnect with back-off semantic.
Thus, a potentially unavailable Kafka broker gets appropriately reflected by connection status.

Signed-off-by: Juergen Fickel <juergen.fickel@bosch.io>
jufickel-b pushed a commit to bosch-io/ditto that referenced this issue Jan 18, 2022
…re to avoid unwanted side effects.

Signed-off-by: Juergen Fickel <juergen.fickel@bosch.io>
@thjaeckle thjaeckle added this to the 2.3.0 milestone Jan 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants