Hi All,
There are 2 types of arrays specified in the Kafka protocol documentation : 
ARRAY and COMPACT_ARRAY.
But in the protocol details for the different messages, it does not explicitly 
specify if the array type is which one of the above.

For example, the BNF grammar for the section for MetadataRequest API is as 
below :

Metadata Request (Version: 0) => [topics] 
  topics => name 
    name => STRING

What is the type of [topics] ? Is it ARRAY or COMPACT_ARRAY ?

After playing around with the protocol using some tests, I think for Version:0 
of this API request, the broker expects this to be of type ARRAY.

But for higher versions, say v9, COMPACT_ARRAY is expected.

I think the protocol really needs to be explicit and is lacking in this respect.

Regards,
Neeraj

Reply via email to