librdkafka v2.13.2 is a maintenance release:
- The librdkafka.redist NuGet package now includes binary for alpine-arm64 (#5237, @mclayton7)
- Remove CPU usage regression when a subscription matches no topics (#5324).
- Fix rd_kafka_consume_batch_queue incorrectly updating the application position on EOF or error messages (#5213).
- Fix compilation without getentropy (@olegrok, @lpsinger, #5288).
- Use a truly random seed for pseudo-random number generation whenever available (#5288).
- Fix rd_list destroy callback type mismatch by changing rd_kafka_assignor_destroy to take a void * argument, as expected by rd_list_init() destroy callbacks, and casting internally to rd_kafka_assignor_t * (#5195) (#5278).
Fixes
General fixes
- Issues: #5283. Fix compilation without getentropy. glibc versions lacking support are those less than 2.25 (2017). Happening since 2.13.0 (@olegrok, @lpsinger, #5288).
Consumer fixes
- Issues: #5324. Remove CPU usage regression when a subscription matches no topics. The increased CPU usage (~30%) was seen in particular when there are many topics in the clusters and the given subscription regex doesn't match any. Happening since 2.10.0 (#5324).
- Issues: #4844. Fix rd_kafka_consume_batch_queue incorrectly updating the application position when receiving EOF or error messages, causing the position to move forward and likely be stored and committed. When storing the application offset the leader epoch is also considered for correct offset ordering in case of log truncation. Happening since 2.2.0 (#5213).
Checksums
Release asset checksums:
- v2.13.2.zip SHA256
1b71b01a33f54c5d3e359935f73445fde4010215efdb899e3a746475d6aa178a - v2.13.2.tar.gz SHA256
14972092e4115f6e99f798a7cb420cbf6daa0c73502b3c52ae42fb5b418eea8f