diff --git a/README.md b/README.md index 2f2df64ea..dddb3d54e 100644 --- a/README.md +++ b/README.md @@ -48,6 +48,29 @@ c.close() See [examples](examples) for more examples. +Broker compatibility +==================== +The Python client (as well as the underlying C library librdkafka) supports +all broker versions >= 0.8. +But due to the nature of the Kafka protocol in broker versions 0.8 and 0.9 it +is not safe for a client to assume what protocol version is actually supported +by the broker, thus you will need to hint the Python client what protocol +version it may use. This is done through two configuration settings: + + * `broker.version.fallback=YOUR_BROKER_VERSION` (default 0.9.0.1) + * `api.version.request=true|false` (default false) + +When using a Kafka 0.10 broker or later you only need to set +`api.version.request=true`. +If you use Kafka broker 0.9 or 0.8 you should leave +`api.version.request=false` (default) and set +`broker.version.fallback` to your broker version, +e.g `broker.version.fallback=0.9.0.1`. + +More info here: +https://github.com/edenhill/librdkafka/wiki/Broker-version-compatibility + + Prerequisites =============