Details
-
Bug
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
3.3.0, 3.1.2, 3.2.3, 3.4.1
-
None
Description
In documentation from version 3.1 to version 3.4, it looks like the retries explanation has a bug related to max.in.flight.request.per.connection related parameter and possible message reordering.
https://kafka.apache.org/31/documentation.html#producerconfigs_retries
https://kafka.apache.org/32/documentation.html#producerconfigs_retries
https://kafka.apache.org/33/documentation.html#producerconfigs_retries
https://kafka.apache.org/34/documentation.html#producerconfigs_retries
in particular, the section
Allowing retries while setting enable.idempotence to false and max.in.flight.requests.per.connection to 1 will potentially change the ordering of records because if two batches are sent to a single partition, and the first fails and is retried but the second succeeds, then the records in the second batch may appear first.
Is states
max.in.flight.requests.per.connection to 1
It should be said
max.in.flight.requests.per.connection to greater than 1
This bug has been fixed in the latest versions, but it still confuses users using affected versions as the meaning is the opposite of what it should be.
I created a PR , https://github.com/apache/kafka/pull/15413
For version 3.2, but the build failed. Not sure why.