Skip to content

Commit 2f22088

Browse files
authored
Changelog changes and some modification to the KIP-848 migration guide (#5214)
* Changelog changes and some modification to the KIP-848 migration guide * Add that KIP-848 is not enabled by default and other PR comments
1 parent b9a1072 commit 2f22088

File tree

2 files changed

+18
-10
lines changed

2 files changed

+18
-10
lines changed

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,13 @@
22

33
librdkafka v2.12.0 is a feature release:
44

5+
## [KIP-848](https://cwiki.apache.org/confluence/display/KAFKA/KIP-848%3A+The+Next+Generation+of+the+Consumer+Rebalance+Protocol) – General Availability
6+
7+
Starting with **librdkafka 2.12.0**, the next generation consumer group rebalance protocol defined in **[KIP-848](https://cwiki.apache.org/confluence/display/KAFKA/KIP-848%3A+The+Next+Generation+of+the+Consumer+Rebalance+Protocol)** is **production-ready**. Please refer the following [migration guide](INTRODUCTION.md#next-generation-consumer-group-protocol-kip-848) for moving from `classic` to `consumer` protocol.
8+
9+
**Note:** The new consumer group protocol defined in [KIP-848](https://cwiki.apache.org/confluence/display/KAFKA/KIP-848%3A+The+Next+Generation+of+the+Consumer+Rebalance+Protocol) is not enabled by default. There are few contract change associated with the new protocol and might cause breaking changes. `group.protocol` configuration property dictates whether to use the new `consumer` protocol or older `classic` protocol. It defaults to `classic` if not provided.
10+
11+
## Enhancements and Fixes
512
* Support for OAUTHBEARER metadata based authentication types,
613
starting with Azure IMDS. [Introduction available](INTRODUCTION.md#oauthbearer-oidc-metadata-authentication) (#5155).
714
* Fix compression types read issue in GetTelemetrySubscriptions response

INTRODUCTION.md

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1697,18 +1697,20 @@ the original fatal error code and reason.
16971697
To read more about static group membership, see [KIP-345](https://cwiki.apache.org/confluence/display/KAFKA/KIP-345%3A+Introduce+static+membership+protocol+to+reduce+consumer+rebalances).
16981698

16991699
<a name="next-generation-consumer-group-protocol-kip-848"></a>
1700-
### Next Generation Consumer Group Protocol (KIP-848)
1700+
### Next Generation Consumer Group Protocol ([KIP-848](https://cwiki.apache.org/confluence/display/KAFKA/KIP-848%3A+The+Next+Generation+of+the+Consumer+Rebalance+Protocol))
17011701

1702-
Starting with **librdkafka 2.12.0** (GA release), the next generation consumer group rebalance protocol defined in **[KIP-848](https://cwiki.apache.org/confluence/display/KAFKA/KIP-848%3A+The+Next+Generation+of+the+Consumer+Rebalance+Protocol)** is **production-ready**.
1702+
Starting with **librdkafka v2.12.0** (GA release), the next generation consumer group rebalance protocol defined in **[KIP-848](https://cwiki.apache.org/confluence/display/KAFKA/KIP-848%3A+The+Next+Generation+of+the+Consumer+Rebalance+Protocol)** is **production-ready**.
1703+
1704+
**Note:** The new consumer group protocol defined in [KIP-848](https://cwiki.apache.org/confluence/display/KAFKA/KIP-848%3A+The+Next+Generation+of+the+Consumer+Rebalance+Protocol) is not enabled by default. There are few contract change associated with the new protocol and might cause breaking changes. `group.protocol` configuration property dictates whether to use the new `consumer` protocol or older `classic` protocol. It defaults to `classic` if not provided.
17031705

17041706
<a name="overview"></a>
17051707
#### Overview
17061708
- **What changed:**
17071709
The **Group Leader role** (consumer member) is removed. Assignments are calculated by the **Group Coordinator (broker)** and distributed via **heartbeats**.
17081710

17091711
- **Requirements:**
1710-
- Broker version **4.0.0+**
1711-
- librdkafka version **2.12.0+**: GA (production-ready)
1712+
- Broker version: **v4.0.0+**
1713+
- librdkafka version: **v2.12.0+**: GA (production-ready)
17121714

17131715
- **Enablement (client-side):**
17141716
- `group.protocol=consumer`
@@ -1717,7 +1719,7 @@ Starting with **librdkafka 2.12.0** (GA release), the next generation consumer g
17171719
<a name="available-features"></a>
17181720
#### Available Features
17191721

1720-
All KIP-848 features are supported including:
1722+
All [KIP-848](https://cwiki.apache.org/confluence/display/KAFKA/KIP-848%3A+The+Next+Generation+of+the+Consumer+Rebalance+Protocol) features are supported including:
17211723

17221724
- Subscription to one or more topics, including **regular expression (regex) subscriptions**
17231725
- Rebalance callbacks (**incremental only**)
@@ -1881,7 +1883,6 @@ static void rebalance_cb (rd_kafka_t *rk,
18811883
```
18821884
**Note:**
18831885
- The `partitions` list contains **only partitions being added or revoked**, not the full partition list as in the classic `rd_kafka_assign()`.
1884-
- Incremental assignors (including range) are **supported in both classic and KIP-848 protocols**, but this callback is required for KIP-848.
18851886

18861887
<a name="upgrade-and-downgrade"></a>
18871888
#### Upgrade and Downgrade
@@ -1893,10 +1894,10 @@ static void rebalance_cb (rd_kafka_t *rk,
18931894

18941895

18951896
<a name="migration-checklist-next-gen-protocol--kip-848"></a>
1896-
#### Migration Checklist (Next-Gen Protocol / KIP-848)
1897+
#### Migration Checklist (Next-Gen Protocol / [KIP-848](https://cwiki.apache.org/confluence/display/KAFKA/KIP-848%3A+The+Next+Generation+of+the+Consumer+Rebalance+Protocol))
18971898

1898-
1. Upgrade to **librdkafka ≥ 2.12.0** (GA release)
1899-
2. Run against **Kafka brokers ≥ 4.0.0**
1899+
1. Upgrade to **librdkafka ≥ v2.12.0** (GA release)
1900+
2. Run against **Kafka brokers ≥ v4.0.0**
19001901
3. Set `group.protocol=consumer`
19011902
4. Optionally set `group.remote.assignor`; leave `NULL` for broker-controlled (default: `uniform`), valid options: `uniform` or `range`
19021903
5. Replace deprecated configs with new ones
@@ -2350,7 +2351,7 @@ The [Apache Kafka Implementation Proposals (KIPs)](https://cwiki.apache.org/conf
23502351
| KIP-735 - Increase default consumer session timeout | 3.0.0 | Supported |
23512352
| KIP-768 - SASL/OAUTHBEARER OIDC support | 3.0 | Supported |
23522353
| KIP-881 - Rack-aware Partition Assignment for Kafka Consumers | 3.5.0 | Supported |
2353-
| KIP-848 - The Next Generation of the Consumer Rebalance Protocol | 4.0.0 | Preview |
2354+
| KIP-848 - The Next Generation of the Consumer Rebalance Protocol | 4.0.0 | Supported |
23542355
| KIP-899 - Allow producer and consumer clients to rebootstrap | 3.8.0 | Supported |
23552356
| KIP-951 - Leader discovery optimisations for the client | 3.7.0 | Supported |
23562357
| KIP-1082 - Require Client-Generated IDs over the ConsumerGroupHeartbeat | 4.0.0 | Supported |

0 commit comments

Comments
 (0)