Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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 to null
  • MemberEpoch is set to the hard-coded value of 0

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 of client.instance.id
  • RackId is set to null
  • RebalanceTimeoutMs is set to XXXXX
  • SubscribedTopicNames is set to XXXXX
  • SubscribedTopicRegex is set to XXXXX
  • ServerAssignor is set to XXXXX
  • ClientAssignors is set to XXXXX
  • TopicPartitions is set to null 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 

...