Skip to content

KAFKA-19379: Basic upgrade guide for KIP-1071 EA #20029

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 13 commits into from
Jun 30, 2025

Conversation

lucasbru
Copy link
Member

@lucasbru lucasbru commented Jun 24, 2025

Basic documentation describing: - That it's in EA now

  • What it does

  • What features are not yet supported

  • How to enable it / disable it

  • Any changes in the interfaces

       - kafka-streams-groups.sh
    
       - StreamsGroupDescribe
    
  • How to provide feedback

Reviewers: Andrew Schofield aschofield@confluent.io, Matthias J. Sax
matthias@confluent.io

@lucasbru lucasbru requested review from bbejeck and Copilot June 24, 2025 12:54
@github-actions github-actions bot added the docs label Jun 24, 2025
@lucasbru lucasbru requested a review from mjsax June 24, 2025 12:54
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Provides guidance for the Early Access release of the KIP-1071 Streams Rebalance Protocol, including its features, limitations, usage, and related interface changes.

  • Introduces an “Early Access of the Streams Rebalance Protocol” section in the upgrade guide
  • Documents how to enable/disable the new protocol and migration constraints
  • Adds group.protocol configuration reference in the developer guide

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
docs/streams/upgrade-guide.html Added Early Access section describing KIP-1071 features, unsupported functionality, enablement steps, and feedback channels
docs/streams/developer-guide/config-streams.html Added documentation for the new group.protocol Streams config option
Comments suppressed due to low confidence (1)

docs/streams/developer-guide/config-streams.html:784

  • The word “used” appears twice; consider rephrasing to “The group protocol the Kafka Streams client uses for coordination.”
                The group protocol used by the Kafka Streams client used for coordination.

lucasbru and others added 2 commits June 24, 2025 14:57
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@mjsax mjsax added streams KIP-1071 PRs related to KIP-1071 labels Jun 24, 2025
lucasbru and others added 6 commits June 25, 2025 12:47
Co-authored-by: Matthias J. Sax <mjsax@apache.org>
Co-authored-by: Matthias J. Sax <mjsax@apache.org>
Co-authored-by: Matthias J. Sax <mjsax@apache.org>
Co-authored-by: Matthias J. Sax <mjsax@apache.org>
Co-authored-by: Matthias J. Sax <mjsax@apache.org>
Copy link
Member Author

@lucasbru lucasbru left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed the comments

@mjsax
Copy link
Member

mjsax commented Jun 25, 2025

@lucasbru -- did you push all changes? Some replies say "Done", but I did not see any updates.

Copy link
Member

@AndrewJSchofield AndrewJSchofield left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR. A couple of comments but looks very good.

The group protocol used by the Kafka Streams client used for coordination.
It determines how the client will communicate with the Kafka brokers and other clients in the same group.
The default value is <code class="docutils literal"><span class="pre">"classic"</span></code>, which is the classic consumer group protocol.
Can be set to <code class="docutils literal"><span class="pre">"streams"</span></code> (requires broker side enablement) to enable the new Kafka Streams group protocol.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: "broker-side" please

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

Copy link
Member Author

@lucasbru lucasbru left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, suppose I forgot to push

The group protocol used by the Kafka Streams client used for coordination.
It determines how the client will communicate with the Kafka brokers and other clients in the same group.
The default value is <code class="docutils literal"><span class="pre">"classic"</span></code>, which is the classic consumer group protocol.
Can be set to <code class="docutils literal"><span class="pre">"streams"</span></code> (requires broker side enablement) to enable the new Kafka Streams group protocol.
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

Copy link
Member

@AndrewJSchofield AndrewJSchofield left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

</p>

<p>
To operate the new streams groups, explore the options of <code>kafka-streams-groups.sh</code> to list,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a very good call-out. Wondering if we should update docs (follow up PR for ConsumerConfigs / StreamsConfigs) of these configs on the consumer (if it did not already happen, as 848 is already GA), and/or streams, saying something like (not applicable / ignored if "consumer" / "streams" group.protocol is used) ?

For KS, also ok to only do this with GA in AK 4.2 (but we might want to file a ticket for it).

Thoughts?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, I was thinking about it, but I didn't want to pollute the existing docs too much with an early access feature. I think all people who try the new protocol will read this section, so we don't have to repeat it in the other documentation.

For GA, I agree, we definitely should state for every of the existing options whether they apply to KIP-1071 or not, and also describe the CLI tool in more detail.

lucasbru and others added 2 commits June 27, 2025 20:28
Co-authored-by: Matthias J. Sax <mjsax@apache.org>
Co-authored-by: Matthias J. Sax <mjsax@apache.org>
@lucasbru lucasbru merged commit 53d654a into apache:trunk Jun 30, 2025
20 checks passed
lucasbru added a commit that referenced this pull request Jun 30, 2025
Basic documentation describing:   - That it's in EA now

 - What it does

 - What features are not yet supported

 - How to enable it / disable it

 - Any changes in the interfaces

          - kafka-streams-groups.sh

          - StreamsGroupDescribe

 - How to provide feedback

Reviewers: Andrew Schofield <aschofield@confluent.io>, Matthias J. Sax
 <matthias@confluent.io>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Matthias J. Sax <mjsax@apache.org>
jiafu1115 pushed a commit to jiafu1115/kafka that referenced this pull request Jul 2, 2025
Basic documentation describing:   - That it's in EA now

 - What it does

 - What features are not yet supported

 - How to enable it / disable it

 - Any changes in the interfaces

          - kafka-streams-groups.sh

          - StreamsGroupDescribe

 - How to provide feedback

Reviewers: Andrew Schofield <aschofield@confluent.io>, Matthias J. Sax
 <matthias@confluent.io>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Matthias J. Sax <mjsax@apache.org>
jiafu1115 pushed a commit to jiafu1115/kafka that referenced this pull request Jul 3, 2025
Basic documentation describing:   - That it's in EA now

 - What it does

 - What features are not yet supported

 - How to enable it / disable it

 - Any changes in the interfaces

          - kafka-streams-groups.sh

          - StreamsGroupDescribe

 - How to provide feedback

Reviewers: Andrew Schofield <aschofield@confluent.io>, Matthias J. Sax
 <matthias@confluent.io>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Matthias J. Sax <mjsax@apache.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs KIP-1071 PRs related to KIP-1071 streams
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants