arnabnandy7 opened a new pull request, #23698: URL: https://github.com/apache/kafka/pull/23698
KAFKA-21178: This change introduces the dynamically reconfigurable broker configuration `compression.disabled.types`, which allows administrators to reject new client writes that use selected compression types. Supported values are `gzip`, `snappy`, `lz4`, and `zstd`; the default is an empty list to preserve existing behavior. The restriction applies to both the compression type supplied by the producer and the final compression type selected by the broker through `compression.type`. Validation occurs before record decompression. Replication and reads of existing records remain unaffected, allowing brokers to retain and replicate historical data that uses a disabled compression type. The configuration is broker-only and cannot be overridden at the topic level. Dynamic updates are propagated to existing logs without requiring a broker restart. Rejected produce requests return `UNSUPPORTED_COMPRESSION_TYPE`. Documentation for the new configuration and its dynamic update behavior is included. Testing includes: - Unit coverage for rejecting each supported producer compression type. - Unit coverage for rejecting a broker-selected disabled compression type. - Unit coverage confirming replication accepts disabled compression types. - Configuration parsing and invalid-value validation. - Dynamic log-configuration propagation. - Produce-path integration coverage for dynamic updates in both isolated and combined KRaft clusters. The targeted storage, configuration, and integration tests pass. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
