I am thinking about that: 1 If a Producer compresses a Message set which is nested more than 2 levels records recursively and sends it to broker, how does broker know which offset should be allocated to this message set without uncompressed all levels and getting the all records? 2 Assuming that there is a Message set just compresses with 10 record(message) without more deeper nest (only 1 level nest), when Consumer receives this message set, Consumer thinks that it gets 10 messages, but Consumer observes that the offsets of all 10 items are the same value, right?