DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
...
Compatibility, Deprecation, and Migration Plan
### Backwards compatibility
Behavior break : floor raised from `0` to `200` -- any cluster currently configured with share.coordinator.snapshot.update.records.per.snapshot set to a value below 200 will fail broker startup config validation after upgrade. Clusters using the default 500 or any value in [200, 500] are unaffected. Clusters that previously set the value to anything between 501 and 1000 — not currently possible since the existing range is [0, 500] — would also pass validation in the new range; this case does not apply on upgrade.
Summary :
- Values 0–199: fail to start after upgrade (operator must fix)
- Values 200–500: unaffected
- Values 501+: don't exist (can't happen)
Behavioral compatibility (ceiling raise): raising the ceiling from 500 to 1000 is non-breaking on its own. Brokers that retain their existing setting in [200, 500] behave identically to today. Operators can opt into the higher range explicitly.
Operators must upgrade the controller/broker - **Wire compatibility**: unaffected. No RPC, protocol, or storage changes.
- **API compatibility**: unaffected. Only additive `ConfigDef` and `GroupConfig` entries.
- **Behavioral compatibility**: brokers that do not change the broker-level value see no behavior change. A broker upgraded to a release containing this KIP that retains its previous setting (`<= 500`) behaves identically to today. Operators who explicitly raise the broker value or set a per-group override opt into the new behavior.
- **Mixed-version clusters**: while the controller is on an older release that does not understand the new group config name, `incrementalAlterConfigs` requests with `share.snapshot.update.records.per.snapshot` are rejected with `InvalidConfigurationException`. Operators must upgrade the controller before relying on the per-group override. This matches how every prior `GroupConfig` addition has rolled out.
### Deprecation
None. No existing behavior is removed or renamed.
### Migration
No user action required. Operators wanting the new ceiling must explicitly raise `share.coordinator.snapshot.update.records.per.snapshot`. Per-group overrides are opt-in via `kafka-configs.sh`.
...