Enabling an Idempotent Producer
Describes how to enable an idempotent producer. Idempotence refers to exactly-once message delivery semantics.
To enable idempotence, the enable.idempotence
configuration must be set to
true. When set, the retries configuration defaults to Integer.MAX_VALUE and the
Acks configuration defaults to all.
The idempotence producer option is set by setting the enable.idempotence
value of true passed through the ProducerConfig
class.
Constant Field Values |
---|
org.apache.kafka.clients.producer.ProducerConfig |
Modifier and Type | Constant Field | Value |
---|---|---|
public static final java.lang.String |
ENABLE_IDEMPOTENCE_CONFIG |
enable.idempotence |
Example Code Snippet:
props.put(ProducerConfig.ENABLE_IDEMPOTENCE_CONFIG, true);
NOTE
The default is false, which retains at-least-once message delivery semantics.TIP
There are no API changes for the Idempotent Producer functionality, so existing
applications do not need to be modified except to enable the producer configuration
property.