Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: __dlq.errors.message

...

Header nameDescription
__dlq.errors.topic 

The name of the topic that contained the original record.

__dlq.errors.partition 

The partition that contains the original record (encoded as a UTF-8 string).

__dlq.errors.offset 

The offset of the original record (encoded as a UTF-8 string).

__dlq.errors.group 

If known, the group ID of the delivery of the original record.

__dlq.errors.delivery.count 

If known, the delivery count of the original record (encoded as a UTF-8 string).

__dlq.errors.message 

The reason for the original record's delivery failure.

Additionally, the broker can include the header, key and value of the original record in the DLQ record, but that takes additional configuration because copying the original record duplicates its content which may be undesirable in performance or security terms.

...

ConfigurationDescriptionValues
errors.deadletterqueue.topic.name The name of the topic to be used as the dead-letter queue (DLQ) for undeliverable records. The topic name is blank by default, which means that there is no DLQ topic for this group.Type: string, default: "", must not start with double underscore "_ _" to ensure that internal topics are not mistakenly used as DLQ topics
errors.deadletterqueue.copy.record.enable Whether to copy the record onto the dead-letter queue topic, or just to write a record containing the context information headers.Type: boolean, default: false 

Topic configuration

ConfigurationDescriptionValues
errors.deadletterqueue.group.enable Whether the topic can be used as a DLQ topic for groups.Type: boolean, default: false 

Records

This KIP defines a new DeliveryState  of Archiving with the value of 3 which indicates a record which is in the process of being written to the dead-letter queue topic. As the details of the implementation develop, it will become clear whether this value is written to the share-group state topic, or just a state in memory like Acquired. The KIP reserves it for potential use in the existing share coordinator record schemas.

...