suzhiking opened a new pull request, #23486:
URL: https://github.com/apache/kafka/pull/23486
Kafka 4.4 adds static membership (`group.instance.id`) to the Streams
Rebalance Protocol, but the 4.4 docs announce it without stating the broker
requirement.
The `InstanceId` field exists in `StreamsGroupHeartbeatRequest` v0, so a 4.4
Kafka Streams client sends it to any broker. Brokers older than 4.4 reject it
via `throwIfStreamsGroupHeartbeatRequestIsUsingUnsupportedFeatures` with
`INVALID_REQUEST` ("Static membership is not yet supported"), and
`StreamsGroupHeartbeatRequestManager` treats `INVALID_REQUEST` as a fatal error
that shuts down the client. This bites in particular when brokers are
downgraded from 4.4 to 4.3 or 4.2 while static members are running: every
heartbeat fails and the application goes down. Failing fast is the intended
behavior, but users need to know about it before they downgrade.
This PR documents the broker requirement, the failure mode, and the recovery
step (remove `group.instance.id` and restart the application) in:
- `docs/streams/upgrade-guide.md`, the 4.4 static membership paragraph
- `docs/streams/developer-guide/streams-rebalance-protocol.md`, the Static
Membership bullet
- `docs/streams/developer-guide/config-streams.md`, the `group.instance.id`
section
- `docs/getting-started/upgrade.md`, a new bullet under "Notable changes in
4.4.0"
Docs only, no code changes.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]