LEE SOMANG created FLINK-35870:
----------------------------------
Summary: Change DEFAULT_KAFKA_TRANSACTION_TIMEOUT in
KafkaSinkBuilder
Key: FLINK-35870
URL: https://issues.apache.org/jira/browse/FLINK-35870
Project: Flink
Issue Type: Improvement
Components: Connectors / Kafka
Reporter: LEE SOMANG
Currently the `DEFAULT_KAFKA_TRANSACTION_TIMEOUT` value of `KafkaSinkBuilder`
is set to 1 hour.
```java
private static final Duration DEFAULT_KAFKA_TRANSACTION_TIMEOUT =
Duration.ofHours(1);
```
However, the default value described on the official Kafka
website(https://kafka.apache.org/documentation/#brokerconfigs_transaction.max.timeout.ms)
is 15 minutes, so if we leave this set to 1 hour, the following error is
displayed
```text
2024-07-20 16:30:40
org.apache.kafka.common.KafkaException: Unexpected error in
InitProducerIdResponse; The transaction timeout is larger than the maximum
value allowed by the broker (as configured by transaction.max.timeout.ms).
at
org.apache.kafka.clients.producer.internals.TransactionManager$InitProducerIdHandler.handleResponse(TransactionManager.java:1418)
at
org.apache.kafka.clients.producer.internals.TransactionManager$TxnRequestHandler.onComplete(TransactionManager.java:1322)
at org.apache.kafka.clients.ClientResponse.onComplete(ClientResponse.java:109)
at
org.apache.kafka.clients.NetworkClient.completeResponses(NetworkClient.java:583)
at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:575)
at
org.apache.kafka.clients.producer.internals.Sender.maybeSendAndPollTransactionalRequest(Sender.java:418)
at org.apache.kafka.clients.producer.internals.Sender.runOnce(Sender.java:316)
at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:243)
at java.base/java.lang.Thread.run(Thread.java:829)
```
So it seems reasonable to change this value from 1 hour to 15 minutes.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)