[ https://issues.apache.org/jira/browse/KAFKA-7549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16678602#comment-16678602 ]
Dong Lin commented on KAFKA-7549: --------------------------------- I actually think it is reasonable for client to receive InvalidRequestException if client sends ProduceRequest V3 with zstd codec. We can not send UnsupportedCompressionTypeException because UNSUPPORTED_COMPRESSION_TYPE exception because if ProduceRequest is V3 then there is no guarantee that client library can understand the error code 76. The meaning of UnsupportedVersionException is currently "The version of API is not supported", which does not match the scenario here because ProduceRequest V3 is actually supported by the broker. InvalidRequestException is reasonable because the issue here is that ProduceRequest V3 is used with zstd codec which makes the entire request invalid. [~edenhill] [~dongjin] By saying "client side bug" in the Jira description, is this bug in Apache Kafka or in another custom client library? If it is in Apache Kafka, is there Jira that tracks this issue? > Old ProduceRequest with zstd compression does not return error to client > ------------------------------------------------------------------------ > > Key: KAFKA-7549 > URL: https://issues.apache.org/jira/browse/KAFKA-7549 > Project: Kafka > Issue Type: Bug > Components: compression > Reporter: Magnus Edenhill > Assignee: Lee Dongjin > Priority: Major > Fix For: 2.1.0 > > > Kafka broker v2.1.0rc0. > > KIP-110 states that: > "Zstd will only be allowed for the bumped produce API. That is, for older > version clients(=below KAFKA_2_1_IV0), we return UNSUPPORTED_COMPRESSION_TYPE > regardless of the message format." > > However, sending a ProduceRequest V3 with zstd compression (which is a client > side bug) closes the connection with the following exception rather than > returning UNSUPPORTED_COMPRESSION_TYPE in the ProduceResponse: > > {noformat} > [2018-10-25 11:40:31,813] ERROR Exception while processing request from > 127.0.0.1:60723-127.0.0.1:60656-94 (kafka.network.Processor) > org.apache.kafka.common.errors.InvalidRequestException: Error getting request > for apiKey: PRODUCE, apiVersion: 3, connectionId: > 127.0.0.1:60723-127.0.0.1:60656-94, listenerName: ListenerName(PLAINTEXT), > principal: User:ANONYMOUS > Caused by: org.apache.kafka.common.record.InvalidRecordException: Produce > requests with version 3 are note allowed to use ZStandard compression > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)