Skip to content

KAFKA-18284: Add group coordinator records for Streams rebalance protocol#18228

Merged
cadonna merged 4 commits intoapache:trunkfrom
cadonna:streams_rebalance_protocol_records
Dec 19, 2024
Merged

KAFKA-18284: Add group coordinator records for Streams rebalance protocol#18228
cadonna merged 4 commits intoapache:trunkfrom
cadonna:streams_rebalance_protocol_records

Conversation

@cadonna
Copy link
Copy Markdown
Member

@cadonna cadonna commented Dec 17, 2024

KIP-1071 specifies records that the group coordinator needs to store into the consumer offset topic to persist the state of a Streams group. This records are specified in json files from which the actual classes for the records are generated.

This commit adds the records needed by the group corrdinator to store the state of a Streams group.

More detailed description of your change,
if necessary. The PR title and PR message become
the squashed commit message, so use a separate
comment to ping reviewers.

Summary of testing strategy (including rationale)
for the feature or bug fix. Unit and/or integration
tests are expected for any behaviour change and
system tests should be considered for larger changes.

Committer Checklist (excluded from commit message)

  • Verify design and implementation
  • Verify test coverage and CI build status
  • Verify documentation (including upgrade notes)

@cadonna cadonna requested a review from lucasbru December 17, 2024 13:42
@github-actions github-actions bot added the triage PRs from the community label Dec 17, 2024
@cadonna cadonna requested review from bbejeck and mjsax December 17, 2024 13:42
@cadonna
Copy link
Copy Markdown
Member Author

cadonna commented Dec 17, 2024

Call for review: @aliehsaeedii

@cadonna cadonna added streams core Kafka Broker KIP-1071 PRs related to KIP-1071 and removed triage PRs from the community labels Dec 17, 2024
@cadonna cadonna force-pushed the streams_rebalance_protocol_records branch from d54ab94 to 4623f41 Compare December 18, 2024 07:30
Copy link
Copy Markdown
Member

@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.

Thanks for the PR. I left some comments!

"commonStructs": [
{ "name": "Endpoint", "versions": "0+", "fields": [
{ "name": "Host", "type": "string", "versions": "0+",
"about": "host of the endpoint" },
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

All other "about" fields are capitalized and end with a ".".

"flexibleVersions": "none",
"fields": [
{ "name": "GroupId", "type": "string", "versions": "17",
"about": "The group id." }
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

nit: Probably we should try to use "ID" everywhere in the text, instead of "id".

{ "name": "key", "type": "string", "versions": "0+",
"about": "The key of the topic-level configuration." },
{ "name": "value", "type": "string", "versions": "0+",
"about": "The value of the topic-level configuration," }
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

ends with comma

"about": "The client host." },
{ "name": "RebalanceTimeoutMs", "type": "int32", "versions": "0+", "default": -1,
"about": "The rebalance timeout." },

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

not sure if blank lines serve any purpose in this file, maybe remove?

…ocol

KIP-1071 specifies records that the group coordinator needs to store
into the consumer offset topic to persist the state of a Streams
group. This records are specified in json files from which the actual
classes for the records are generated.

This commit adds the records needed by the group corrdinator to store
the state of a Streams group.
@cadonna cadonna force-pushed the streams_rebalance_protocol_records branch from 4623f41 to b891876 Compare December 18, 2024 11:31
Copy link
Copy Markdown
Member

@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.

Thanks for the PR. Looks good to me!

@cadonna cadonna merged commit 4a6c6d1 into apache:trunk Dec 19, 2024
ijuma added a commit to ijuma/kafka that referenced this pull request Dec 19, 2024
…e-old-protocol-versions

* apache-github/trunk: (25 commits)
  KAFKA-18270: FindCoordinator v0 incorrectly tagged as deprecated (apache#18262)
  KAFKA-18284: Add group coordinator records for Streams rebalance protocol (apache#18228)
  MINOR: Fix flaky state updater test (apache#18253)
  MINOR: improve StreamsResetter logging (apache#18237)
  KAFKA-18227: Ensure v2 partitions are not added to last transaction during upgrade (apache#18176)
  Add IT for share consumer with duration base offet auto reset (apache#18251)
  KAFKA-18283: Add StreamsGroupDescribe RPC definitions (apache#18230)
  KAFKA-18241: add docs check to CI (apache#18183)
  KAFKA-18223 Improve flaky test report (apache#18212)
  MINOR Remove triage label in nightly job (apache#18147)
  KAFKA-18294 Remove deprecated SourceTask#commitRecord (apache#18260)
  KAFKA-18264 Remove NotLeaderForPartitionException (apache#18211)
  KAFKA-13722: Refactor SerdeGetter (apache#18242)
  KAFKA-18094 Remove deprecated TopicListing(String, Boolean) (apache#18248)
  KAFKA-18282: Add StreamsGroupHeartbeat RPC definitions (apache#18227)
  KAFKA-18026: KIP-1112 migrate KTableSuppressProcessorSupplier (apache#18150)
  KAFKA-18026: transition KTable#filter impl to use processor wrapper (apache#18205)
  KAFKA-18293 Remove `org.apache.kafka.common.security.oauthbearer.secured.OAuthBearerLoginCallbackHandler` and `org.apache.kafka.common.security.oauthbearer.secured.OAuthBearerValidatorCallbackHandler` (apache#18244)
  MINOR: add assertion about groupEpoch and targetAssignmentEpoch to testConsumerGroups (apache#18203)
  KAFKA-17960; PlaintextAdminIntegrationTest.testConsumerGroups fails with CONSUMER group protocol (apache#18234)
  ...
tedyu pushed a commit to tedyu/kafka that referenced this pull request Jan 6, 2025
…ocol (apache#18228)

KIP-1071 specifies records that the group coordinator needs to store
into the consumer offset topic to persist the state of a Streams
group. This records are specified in json files from which the actual
classes for the records are generated.

This commit adds the records needed by the group coordinator to store
the state of a Streams group.

Reviewer: Lucas Brutschy <lbrutschy@confluent.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

core Kafka Broker KIP-1071 PRs related to KIP-1071 streams

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants