Releases
v0.11.4
Maintenance release
Default changes
socket.max.fails
changed to 1
to provide same functionality (fail request immediately on error) now when retries are working properly again.
fetch.max.bytes
(new config property) is automatically adjusted to be >= message.max.bytes
, and receive.message.max.bytes
is automatically adjusted to be > fetch.max.bytes
. (#1616 )
New features
Noteworthy fixes
Formalise and fix Producer retries and retry-ordering (#623 , #1092 , #1432 , #1476 , #1421 )
Ordering is now retained despite retries if max.in.flight=1
.
Behaviour is now documented
Fix timeouts for retried requests and properly handle retries for all request types (#1497 )
Add and use fetch.max.bytes
to limit total Fetch response size (KIP-74, #1616 ). Fixes "Invalid response size" issues.
Enhancements
Added sasl.mechanism
and compression.type
configuration property aliases for conformance with Java client.
Improved Producer performance
C++: add c_ptr() to Handle,Topic,Message classes to expose underlying librdkafka object
Honour per-message partition in produce_batch() if MSG_F_PARTITION set (@barrotsteindev , closes #1604 )
Added on_request_sent()
interceptor
Added experimental flexible producer queuing.strategy=fifo|lifo
Broker address DNS record round-robin: try to maintain round-robin position across resolve calls.
Set system thread name for internal librdkafka threads (@tbsaunde )
Added more concise and user-friendly 'consumer' debug context
Add partitioner
(string) topic configuration property to set the builtin partitioners
Generate rdkafka-static.pc (pkg-config) for static linking
Fixes
Fix producer memory leak on <0.11 brokers when compressed messageset is below copy threshold (closes #1534 )
CRC32C - fix unaligned access on ARM (@Soundman32 )
Fix read after free in buf_write_seek
Fix broker wake up (#1667 , @gduranceau )
Fix consumer hang when rebalancing during commit (closes #1605 , @ChenyuanHu )
CMake fixes for Windows (@raulbocanegra )
LeaveGroup was not sent on close when doing final offset commits
Fix for consumer slowdown/stall on compacted topics where actual last offset < MsgSet.LastOffset (KAFKA-5443)
Fix global->topic conf fallthru in C++ API
Fix infinite loop on LeaveGroup failure
Fix possible crash on OffsetFetch retry
Incorporate compressed message count when deciding on fetch backoff (#1623 )
Fix debug-only crash on Solaris (%s NULL) (closes #1423 )
Drain broker ops queue on termination to avoid hang (closes #1596 )
cmake: Allow build static library (#1602 , @proller )
Don't store invalid offset as next one when pausing (#1453 , @mfontanini )
use #if instead of #ifdef / defined() for atomics (#1592 , @vavrusa )
fixed .lib paths in nuget packaging (#1587 )
Fixes strerror_r crash on alpine (#1580 , @skarlsson )
Allow arbitrary lengthed (>255) SASL PLAIN user/pass (#1691 , #1692 )
Trigger ApiVersionRequest on reconnect if broker.version.fallback supports it (closes #1694 )
Read Fetch MsgAttributes as int8 (discovered by @tvoinarovskyi , closes #1689 )
Portability: stop using typeof in rdkafka_transport.c (#1708 , @tbsaunde )
Portability: replace use of #pragma once with header guards (#1688 , @tbsaunde )
mklove: add LIBS in reverse order to maintain dependency order
Fix build when python is not available #1358
You can’t perform that action at this time.