junrao commented on code in PR #19371: URL: https://github.com/apache/kafka/pull/19371#discussion_r2101057057
########## core/src/main/scala/kafka/raft/KafkaMetadataLog.scala: ########## @@ -589,8 +589,9 @@ object KafkaMetadataLog extends Logging { ): KafkaMetadataLog = { val props = new Properties() props.setProperty(TopicConfig.MAX_MESSAGE_BYTES_CONFIG, config.maxBatchSizeInBytes.toString) - props.setProperty(TopicConfig.SEGMENT_BYTES_CONFIG, config.logSegmentBytes.toString) - props.setProperty(TopicConfig.SEGMENT_MS_CONFIG, config.logSegmentMillis.toString) + // Since MetadataLogConfig validates the log segment size using a minimum allowed value, + // we can safely use `internal.segment.bytes` to configure it instead of relying on `segment.bytes`. + props.setProperty(LogConfig.INTERNAL_SEGMENT_BYTES_CONFIG, config.logSegmentBytes.toString) Review Comment: Hmm, we have tests using the following constructor to pass in a small segmentBytes value. ``` public MetadataLogConfig(int internalLogSegmentBytes, long logSegmentMillis, long retentionMaxBytes, long retentionMillis, int maxBatchSizeInBytes, int maxFetchSizeInBytes, long deleteDelayMillis) { ``` This will fail the validation in the following if it's passed in as TopicConfig.SEGMENT_BYTES_CONFIG, right? ``` LogConfig.validate(props) val defaultLogConfig = new LogConfig(props) ``` -- 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: jira-unsubscr...@kafka.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org