Versions Compared

Key

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

...

The following table summarizes the configuration parameters for Share Groups. It indicates which parameters are currently supported as dynamic group configurations and which are introduced by this KIP.

Broker Configuration Key
Dynamic Group Configuration Key
DescriptionGroup Level Dynamic Config Support
group.share.session.timeout.msThe timeout to detect client failures when using the share group protocol.Yes
group.share.heartbeat.interval.msThe heartbeat interval given to the members of a share group.Yes
group.share.record.lock.duration.msThe record acquisition lock duration in milliseconds for share groups.Yes
group.share.partition.max.record.locksShare-group record lock limit per share-partition.No
group.share.delivery.count.limitThe maximum number of delivery attempts for a record delivered to a share group.No
group.share.max.sizeThe maximum number of members that a single share group can accommodate.No

Proposed Changes

We propose adding the following configurations to extend the list of supported dynamic configs for groupsdynamic group configuration mechanism to include share.partition.max.record.locks, share.delivery.count.limit, and share.max.size. This allows these parameters to be dynamically configured and tuned for each share groups at runtime.

Compatibility, Deprecation, and Migration Plan

  • What impact (if any) will there be on existing users?
  • If we are changing behavior how will we phase out the older behavior?
  • If we need special migration tools, describe them here.
  • When will we remove the existing behavior?

Test Plan

Describe in few sentences how the KIP will be tested. We are mostly interested in system tests (since unit-tests are specific to implementation details). How will we know that the implementation works as expected? How will we know nothing broke?

Rejected Alternatives

This change is fully backward compatible. Older broker versions will continue to apply only the broker-level static configurations. After upgrading to the new version, users can dynamically update the group-level configurations to override these values.

Test Plan

Unit tests and integration tests will be added.

Rejected Alternatives

NoneIf there are alternative ways of accomplishing the same thing, what were they? The purpose of this section is to motivate why the design is the way it is and not some other way.