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 We think it should said max.in.flight.requests.per.connection to greater than 1 That makes the explanation confusing. This email and any attachments are confidential and must not be disclosed to any person other than the intended recipient.