...
The following description provides more clarity on the states that make up the CGMSM:
NEW
...
NEW
is the initial state for a CGSM
...
upon its creation. The Consumer
will remain in this state until the next pass of the background thread loop.
JOINING
A state of JOINING
signifies that a Consumer wants to join a consumer group. On the next pass of the background thread, the Consumer
will enter this state
...
to begin communicating with the Kafka broker node that was elected as the group coordinator. A ConsumerGroupHeartbeatRequest
will be sent to the coordinator with specific values in the request:
MemberId
is set tonull
MemberEpoch
is set to the hard-coded value of0
Since this is the first request to the coordinator, the ConsumerGroupHeartbeatRequest
will be a full request, including values for the following:
InstanceId
is set to the configured value ofclient.instance.id
RackId
is set tonull
RebalanceTimeoutMs
is set toXXXXX
SubscribedTopicNames
is set toXXXXX
SubscribedTopicRegex
is set toXXXXX
ServerAssignor
is set toXXXXX
ClientAssignors
is set toXXXXX
TopicPartitions
is set tonull
since there are no assigned partitions yet
Per KIP-848's description of the request schema, the above values are only sent with the ConsumerGroupHeartbeatRequest
when they change on the client.
JOINED
afsdfsa
ASSIGNING
TBD
TERMINATING
TBD
TERMINATED
TBD
...
Consumer API Internal Changes
...