librdkafka v2.5.0 is a feature release.
- KIP-951
Leader discovery optimisations for the client (#4756, #4767). - Fix segfault when using long client id because of erased segment when using flexver. (#4689)
- Fix for an idempotent producer error, with a message batch not reconstructed
identically when retried (#4750) - Removed support for CentOS 6 and CentOS 7 (#4775).
- KIP-714 Client
metrics and observability (#4721).
Upgrade considerations
- CentOS 6 and CentOS 7 support was removed as they reached EOL
and security patches aren't publicly available anymore.
ABI compatibility from CentOS 8 on is maintained through pypa/manylinux,
AlmaLinux based.
See also Confluent supported OSs page (#4775).
Enhancements
- Update bundled lz4 (used when
./configure --disable-lz4-ext
) to
v1.9.4, which contains
bugfixes and performance improvements (#4726). - KIP-951
With this KIP leader updates are received through Produce and Fetch responses
in case of errors corresponding to leader changes and a partition migration
happens before refreshing the metadata cache (#4756, #4767).
Fixes
General fixes
- Issues: confluentinc/confluent-kafka-dotnet#2084
Fix segfault when a segment is erased and more data is written to the buffer.
Happens since 1.x when a portion of the buffer (segment) is erased for flexver or compression.
More likely to happen since 2.1.0, because of the upgrades to flexver, with certain string sizes like a long client id (#4689).
Idempotent producer fixes
- Issues: #4736
Fix for an idempotent producer error, with a message batch not reconstructed
identically when retried. Caused the error message "Local: Inconsistent state: Unable to reconstruct MessageSet".
Happening on large batches. Solved by using the same backoff baseline for all messages
in the batch.
Happens since 2.2.0 (#4750).
Checksums
Release asset checksums:
- v2.5.0.zip SHA256
644c1b7425e2241ee056cf8a469c84d69c7f6a88559491c0813a6cdeb5563206
- v2.5.0.tar.gz SHA256
3dc62de731fd516dfb1032861d9a580d4d0b5b0856beb0f185d06df8e6c26259