According to the Confluent Consumer Configuration Docs, connections.max.idle.ms should be available as a consumer configuration.
However it looks like this is not configurable on the Consumer Configuration side in this library? To be honest it doesn't look like librdkafka exposes this as well, so I'm wondering if the Confluent Consumer Configuration Doc is correct.
they are incorrect in that they imply the java client config applies to all clients, which is not the case. thanks.
Aha, I see. Would you consider a pull request to include this in this .NET Client if we figure out how? :)
why do you need this? note that on the broker there is connections.max.idle.ms (defaults to 10 minutes).
My usecase is this, let's imagine that my Kafka broker lives on premises. I have my broker connections.max.idle.ms set to 45 minutes because it's OK for my environment.
However a third-party client is consuming from Azure which the firewall idle timeout is about 4 minutes. If he is unable to configure it from the client-side our connection will keep a 45 minute idle timeout.
So my reasoning is this, as the Kafka Broker "hoster" we can never be sure of what the client's firewall policies are and we need them to be able to configure this on their end, because otherwise we would have to set an extremely low value for connections.max.idle.ms on the broker.
What do you think?
interesting point. related: https://github.com/edenhill/librdkafka/issues/3109
can I suggest opening an issue on librdkafka (it would be a librdkafka change), and let's see what @edenhill thinks about it.
connections.max.idle.ms will be available in the next librdkafka release.
thanks @edenhill !
Thanks both @edenhill and @mhowlett. Really appreciate you spending the time and effort!
Most helpful comment
thanks @edenhill !