Details
-
Bug
-
Status: Resolved
-
Blocker
-
Resolution: Fixed
-
3.0.0
-
None
-
None
Description
In a ZK cluster, dynamic default broker configs are stored in the zNode /brokers/<default>. Without this fix, when dynamic configs from snapshots are processed by the KRaft brokers, the BrokerConfigHandler checks if the resource name is "<default>" to do a default update and converts the resource name to an integer otherwise to do a per-broker config update.
In KRaft, dynamic default broker configs are serialized in metadata with empty string instead of "<default>". This was causing the BrokerConfigHandler to throw a NumberFormatException for dynamic default broker configs since the resource name for them is not "<default>" or a single integer. The code that calls the handler method for config changes should be fixed to pass "<default>" instead of empty string to the handler method if using KRaft.
Attachments
Issue Links
- links to