[ https://issues.apache.org/jira/browse/KAFKA-15533?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Yi Ding updated KAFKA-15533: ---------------------------- Labels: kip-848-e2e kip-848-preview (was: kip-848-preview) > Ensure HeartbeatRequestManager only send out some fields once > ------------------------------------------------------------- > > Key: KAFKA-15533 > URL: https://issues.apache.org/jira/browse/KAFKA-15533 > Project: Kafka > Issue Type: Sub-task > Reporter: Philip Nee > Assignee: Philip Nee > Priority: Major > Labels: kip-848-e2e, kip-848-preview > > We want to ensure ConsumerGroupHeartbeatRequest is as lightweight as > possible, so a lot of fields in it don't need to be resend. An example would > be the rebalanceTimeoutMs, currently we have the following code: > > > {code:java} > ConsumerGroupHeartbeatRequestData data = new > ConsumerGroupHeartbeatRequestData() > .setGroupId(membershipManager.groupId()) > .setMemberEpoch(membershipManager.memberEpoch()) > .setMemberId(membershipManager.memberId()) > .setRebalanceTimeoutMs(rebalanceTimeoutMs); {code} > > > We should encapsulate these once-used fields into a class such as > HeartbeatMetdataBuilder, and it should maintain a state of whether a certain > field needs to be sent or not. > > Note that, currently only 3 fields are mandatory in the request: > * groupId > * memberEpoch > * memberId -- This message was sent by Atlassian Jira (v8.20.10#820010)