Skip to content

v2.10.1

Compare
Choose a tag to compare
@emasab emasab released this 11 Jun 11:39
· 16 commits to master since this release
2af6749

librdkafka v2.10.1 is a maintenance release:

  • Fix to add locks when updating the metadata cache for the consumer
    after no broker connection is available (@marcin-krystianc, #5066).
  • Fix to the re-bootstrap case when bootstrap.servers is NULL and
    brokers were added manually through rd_kafka_brokers_add (#5067).
  • Fix an issue where the first message to any topic produced via producev or
    produceva was delivered late (by up to 1 second) (#5032).
  • Fix for a loop of re-bootstrap sequences in case the client reaches the
    all brokers down state (#5086).
  • Fix for frequent disconnections on push telemetry requests
    with particular metric configurations (#4912).
  • Avoid copy outside boundaries when reading metric names in telemetry
    subscription (#5105)
  • Metrics aren't duplicated when multiple prefixes match them (#5104)

Fixes

General fixes

  • Issues: #5088.
    Fix for a loop of re-bootstrap sequences in case the client reaches the
    all brokers down state. The client continues to select the
    bootstrap brokers given they have no connection attempt and doesn't
    re-connect to the learned ones. In case it happens a broker restart
    can break the loop for the clients using the affected version.
    Fixed by giving a higher chance to connect to the learned brokers
    even if there are new ones that never tried to connect.
    Happens since 2.10.0 (#5086).
  • Issues: #5057.
    Fix to the re-bootstrap case when bootstrap.servers is NULL and
    brokers were added manually through rd_kafka_brokers_add.
    Avoids a segmentation fault in this case.
    Happens since 2.10.0 (#5067).

Producer fixes

  • In case of producev or produceva, the producer did not enqueue a leader
    query metadata request immediately, and rather, waited for the 1 second
    timer to kick in. This could cause delays in the sending of the first message
    by up to 1 second.
    Happens since 1.x (#5032).

Consumer fixes

  • Issues: #5051.
    Fix to add locks when updating the metadata cache for the consumer.
    It can cause memory corruption or use-after-free in case
    there's no broker connection and the consumer
    group metadata needs to be updated.
    Happens since 2.10.0 (#5066).

Telemetry fixes

  • Issues: #5106.
    Fix for frequent disconnections on push telemetry requests
    with particular metric configurations.
    A NULL payload is sent in a push telemetry request when
    an empty one is needed. This causes disconnections every time the
    push is sent, only when metrics are requested and
    some metrics are matching the producer but none the consumer
    or the other way around.
    Happens since 2.5.0 (#4912).
  • Issues: #5102.
    Avoid copy outside boundaries when reading metric names in telemetry
    subscription. It can cause that some metrics aren't matched.
    Happens since 2.5.0 (#5105).
  • Issues: #5103.
    Telemetry metrics aren't duplicated when multiple prefixes match them.
    Fixed by keeping track of the metrics that already matched.
    Happens since 2.5.0 (#5104).

Checksums

Release asset checksums:

  • v2.10.1.zip SHA256 7cb72c4f3d162f50d30d81fd7f7ba0f3d9e8ecd09d9b4c5af7933314e24dd0ba
  • v2.10.1.tar.gz SHA256 75f59a2d948276504afb25bcb5713a943785a413b84f9099d324d26b2021f758