public static enum FlinkKafkaProducer.Semantic extends Enum<FlinkKafkaProducer.Semantic>
Enum Constant and Description |
---|
AT_LEAST_ONCE
Semantic.AT_LEAST_ONCE the Flink producer will wait for all outstanding messages in the
Kafka buffers to be acknowledged by the Kafka producer on a checkpoint.
|
EXACTLY_ONCE
Semantic.EXACTLY_ONCE the Flink producer will write all messages in a Kafka transaction
that will be committed to Kafka on a checkpoint.
|
NONE
Semantic.NONE means that nothing will be guaranteed.
|
Modifier and Type | Method and Description |
---|---|
static FlinkKafkaProducer.Semantic |
valueOf(String name)
Returns the enum constant of this type with the specified name.
|
static FlinkKafkaProducer.Semantic[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final FlinkKafkaProducer.Semantic EXACTLY_ONCE
In this mode FlinkKafkaProducer
sets up a pool of FlinkKafkaInternalProducer
. Between each checkpoint a Kafka transaction is created,
which is committed on TwoPhaseCommitSinkFunction.notifyCheckpointComplete(long)
. If
checkpoint complete notifications are running late, FlinkKafkaProducer
can run
out of FlinkKafkaInternalProducer
s in the pool. In that case any subsequent
FlinkKafkaProducer.snapshotState(FunctionSnapshotContext)
requests will fail and
FlinkKafkaProducer
will keep using the FlinkKafkaInternalProducer
from
the previous checkpoint. To decrease the chance of failing checkpoints there are four
options:
FlinkKafkaInternalProducer
s poolpublic static final FlinkKafkaProducer.Semantic AT_LEAST_ONCE
public static final FlinkKafkaProducer.Semantic NONE
public static FlinkKafkaProducer.Semantic[] values()
for (FlinkKafkaProducer.Semantic c : FlinkKafkaProducer.Semantic.values()) System.out.println(c);
public static FlinkKafkaProducer.Semantic valueOf(String name)
name
- the name of the enum constant to be returned.IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is nullCopyright © 2014–2023 The Apache Software Foundation. All rights reserved.