hachikuji commented on a change in pull request #9601: URL: https://github.com/apache/kafka/pull/9601#discussion_r533034552
########## File path: core/src/test/scala/unit/kafka/server/EdgeCaseRequestTest.scala ########## @@ -84,19 +85,24 @@ class EdgeCaseRequestTest extends KafkaServerTestHarness { } // Custom header serialization so that protocol assumptions are not forced - private def requestHeaderBytes(apiKey: Short, apiVersion: Short, clientId: String = "", correlationId: Int = -1): Array[Byte] = { + def requestHeaderBytes(apiKey: Short, apiVersion: Short, clientId: String = "", correlationId: Int = -1): Array[Byte] = { + // Check for flex versions, some tests here verify that an invalid apiKey is detected properly, so if -1 is used, + // assume the request is not using flex versions. + val flexVersion = if (apiKey >= 0) ApiKeys.forId(apiKey).requestHeaderVersion(apiVersion) >= 2 else false val size = { 2 /* apiKey */ + 2 /* version id */ + 4 /* correlation id */ + - Type.NULLABLE_STRING.sizeOf(clientId) /* client id */ + Type.NULLABLE_STRING.sizeOf(clientId) /* client id */ + + (if (flexVersion) ByteUtils.sizeOfUnsignedVarint(0) else 0) Review comment: nit: maybe add a comment that this field is for the number of tagged fields? ---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org