Versions Compared

Key

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

...

When the group is Stable (i.e. when there are active consumers in the group), {{DescribeGroups Response}} returns the offsets associated with the group are returned as part of the info returned for each consumer in the group in terms of a ConsumerSummary record. But there is no ConsumerSummary record if there is no consumer in the group, and therefore, in that scenario a different method is required for extracting those associated topic partition assignment for each member of the group, and that assignment can be used to extract the corresponding committed offset(s). However, if the group state is Empty (i.e. when there are no active consumers in the group) there is no associated topic partition info in {{DescribeGroups Response}}. Therefore, a change in the protocol seems to be the only way to extract associated topic partitions of a group and the corresponding committed offsets.

Public Interfaces

...

Also, offset information for a Stable group is not stored in the above Response schema. Offsets associated with a consumer group are currently extracted using the committed method of KafkaConsumer and by creating a new and dummy member in the group for the sole purpose of making committed calls passing on every topic partition of each of the other consumers in the group to extract the corresponding offset. Extracting the A cleaner approach would be extracting these offsets without having to create the this dummy member would definitely be more appealing (problem 2).

Proposed below is version 1 of the DescribeGroups schema to solve both problems above by including the group offset information directly into the Response schema (lines 17-21 below).

...