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

Add a delay for further CG rebalances, beyond KIP-134 group.initial.rebalance.delay.ms

    XMLWordPrintableJSON

    Details

    • Type: New Feature
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 2.1.0
    • Fix Version/s: None
    • Component/s: clients, consumer, core
    • Labels:
      None

      Description

      KIP-134 group.initial.rebalance.delay.ms was a good start, but there are much bigger problems where after a system is up and running, consumers can leave and join in large amounts, causing rebalance storms. One example is Mesosphere deploying new versions of an app - say there are 10 instances, then 10 more instances are deployed with the new version, then the old 10 are scaled down. Ideally this would be 1 or 2 rebalances, instead of 20.

      The trade off is that if the delay is 5 seconds, every consumer joining within that window would extend it by another 5 seconds, potentially causing partitions to never be processed. To mitigate this, either a max rebalance delay could also be added, or multiple consumers joining won't extend the rebalance delay, so that it's always a max of 5 seconds.

      Related: KIP-345: Introduce static membership protocol to reduce consumer rebalances
      KAFKA-7018: persist memberId for consumer restart

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                astubbs Antony Stubbs
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated: