Uploaded image for project: 'Kafka'
  1. Kafka
  2. KAFKA-15284

Implement ConsumerGroupProtocolVersionResolver to determine consumer group protocol

    XMLWordPrintableJSON

Details

    Description

      At client initialization, we need to determine which of the ConsumerDelegate implementations to use:

      1. LegacyKafkaConsumerDelegate
      2. AsyncKafkaConsumerDelegate

      There are conditions defined by KIP-848 that determine client eligibility to use the new protocol. This will be modeled by the—deep breath—ConsumerGroupProtocolVersionResolver.

      Known tasks:

      • Determine at what point in the Consumer initialization the network communication should happen
      • Determine what RPCs to invoke in order to determine eligibility (API versions, IBP version, etc.)
      • Implement the network client lifecycle (startup, communication, shutdown, etc.)
      • Determine the fallback path in case the client is not eligible to use the protocol

      Attachments

        Issue Links

          Activity

            People

              kirktrue Kirk True
              kirktrue Kirk True
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: