What is SyncGroup?
After JoinGroup, the elected leader pushes computed assignments via SyncGroup, and every member waits for the response to learn its own assignment. A rebalance that completes JoinGroup but hangs here usually means the leader is taking too long to compute assignments (large groups, slow custom assignors).
Wire Diagram
Request Header
message_size
int32 · 4B
api_key
int16 · 2B
api_version
int16 · 2B
correlation_id
int32 · 4B
client_id
string
SyncGroupRequest v2
GroupId
string
GenerationId
int32 · 4B
MemberId
string
MemberId
string
Assignment
bytes
Schema & Example
Schema { "GroupId": string, "GenerationId": int32, "MemberId": string, "Assignments": [{ "MemberId": string, "Assignment": bytes }] }
Example { "GroupId": "order-processors", "GenerationId": 5, "MemberId": "consumer-1-abc123", "Assignments": [{ "MemberId": "consumer-1-abc123", "Assignment": "<assignment>" }] }