-
Notifications
You must be signed in to change notification settings - Fork 662
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
Channel consumer example is contradicting with documentation #161
Comments
Much warranted questions. Some answers:
|
Makes sense - thanks for the detailed explanations. |
Is there any news to report on this front? I'm really interested in knowing if you have a list somewhere that can tell us what errors are safe to ignore, and what errors should be acted on by closing the consumer/producer and restarting the application. In our processors, we now ignore these two errors (based on searching the issues in this repository, such as this one: #48 (comment)):
and (properly) close and restart the application on any other errors, but I'm sure there are a lot more we should be adding to our "safe errors" list. |
@JeanMertz As a general rule all errors are to be considered informational and temporary, given that your client and cluster is correctly configured. librdkafka will retry pretty much all operations. But we will document the full set of error codes for each API so that users can make an educated choice what errors she might consider permanent, this is on our backlog and scheduled for the fall. |
@edenhill has this documentation happened yet? I'm asking, because we've since implemented a feature in our code to allow librdkafka to solve "transient" errors: But we're seeing some strange behavior. In particular, we're getting an error such as this:
And then the processor just stops for an hour or more, before it starts working again (this last part is unclear, it might actually have restarted again before it starts working again). This suggests this specific error is not transient, and we should act on this ourselves, by stopping and starting the processor again. Do you have any more insights into this? |
Unless there is a configuration error, all errors should be considered temporary, i.e., a network failure will be fixed, a cluster restart will soon make the brokers available again. |
Description
In the example, we can see that in case of an error, the consumption is stopped (suggesting that an error is fatal): https://github.com/confluentinc/confluent-kafka-go/blob/master/examples/consumer_channel_example/consumer_channel_example.go#L83
In the documentation we have the following explanation (emphasis mine):
I have a few questions:
How to reproduce
N/A
Checklist
Please provide the following information:
LibraryVersion()
):librdkafka
0.11.1-r1
(https://pkgs.alpinelinux.org/package/v3.7/community/x86_64/librdkafka)0.11.0
The text was updated successfully, but these errors were encountered: