...
1// SyncGroupRequest is issued by all group members after they receive a a
2// response for JoinGroup. The group leader is responsible for sending member
3// assignments with the request; all other members do not.
4//
5// Once the leader sends the group assignment, all members will be replied to.
6SyncGroupRequest => key 14, max version 5, flexible v4+, group coordinator
7 // Group is the group ID this sync group is for.
8 Group: string
9 // Generation is the group generation this sync is for.
10 Generation: int32
11 // MemberID is the member ID this member is.
12 MemberID: string
13 // InstanceID is the instance ID of this member in the group (KIP-345).
14 InstanceID: nullable-string // v3+
15 // ProtocolType is the "type" of protocol being used for this group.
16 ProtocolType: nullable-string // v5+
17 // Protocol is the agreed upon protocol name (i.e. "sticky", "range").
18 Protocol: nullable-string // v5+
19 // GroupAssignment, sent only from the group leader, is the topic partition
20 // assignment it has decided on for all members.
21 GroupAssignment: [=>]
22 // MemberID is the member this assignment is for.
23 MemberID: string
24 // MemberAssignment is the assignment for this member. This is typically
25 // of type GroupMemberAssignment.
26 MemberAssignment: bytes
27
28// SyncGroupResponse is returned from a SyncGroupRequest.
29SyncGroupResponse =>
30 ThrottleMillis(2) // v1+
31 // ErrorCode is the error for the sync group request.
32 //
33 // GROUP_AUTHORIZATION_FAILED is returned if the client is not authorized
34 // to the group (no read perms).
35 //
36 // INVALID_GROUP_ID is returned in the requested group ID is invalid.
37 //
38 // COORDINATOR_NOT_AVAILABLE is returned if the coordinator is not available.
39 //
40 // NOT_COORDINATOR is returned if the requested broker is not the coordinator
41 // for the requested group.
42 //
43 // UNKNOWN_MEMBER_ID is returned if the member ID is not a part of the group,
44 // or if the group is empty or dead.
45 //
46 // ILLEGAL_GENERATION is returned if the request's generation ID is invalid.
47 //
48 // REBALANCE_IN_PROGRESS is returned if the group switched back to rebalancing.
49 //
50 // UNKNOWN_SERVER_ERROR is returned if the store of the group assignment
51 // resulted in a too large message.
52 ErrorCode: int16
53 // ProtocolType is the "type" of protocol being used for this group.
54 ProtocolType: nullable-string // v5+
55 // Protocol is the agreed upon protocol name (i.e. "sticky", "range").
56 Protocol: nullable-string // v5+
57 // MemberAssignment is the assignment for this member that the leader
58 // determined.
59 MemberAssignment: bytes
View as plain text