conduktor.io ↗

Kafka OffsetCommit Response Wire Format v8 — Binary Protocol Layout

What is OffsetCommit?

Every consumer sends this after processing records to checkpoint its position into __consumer_offsets. Commit failures during rebalances (REBALANCE_IN_PROGRESS, ILLEGAL_GENERATION) are the root cause of duplicate processing in at-least-once consumers.

Related Errors

COORDINATOR_NOT_AVAILABLE · GROUP_AUTHORIZATION_FAILED · INVALID_GROUP_ID · OFFSET_METADATA_TOO_LARGE · STALE_MEMBER_EPOCH · TOPIC_AUTHORIZATION_FAILED · UNKNOWN_TOPIC_ID · UNKNOWN_TOPIC_OR_PARTITION

Wire Diagram

Response Header · flexible
message_size int32 · 4B
correlation_id int32 · 4B
tagged var
OffsetCommitResponse v8
ThrottleTimeMs int32 · 4B
Topics array
tagged var
Name string (compact)
Partitions array
tagged var
PartitionIndex int32 · 4B
ErrorCode int16 · 2B
tagged var

Schema & Example

Schema
{
  "ThrottleTimeMs": int32,
  "Topics": [{
      "Name": string,
      "Partitions": [{
          "PartitionIndex": int32,
          "ErrorCode": int16
      }]
  }]
}
Example
{
  "ThrottleTimeMs": 0,
  "Topics": [{
      "Name": "orders",
      "Partitions": [{
          "PartitionIndex": 3,
          "ErrorCode": 0
      }]
  }]
}