[ https://issues.apache.org/jira/browse/KAFKA-12499?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17310095#comment-17310095 ]
Matthias J. Sax commented on KAFKA-12499: ----------------------------------------- Not sure if we can pick a reasonable default (even if we have some formula to compute the default based on commit.interval.ms). Maybe, it's just good enough to have a check and throw an informative exception if `commit.interval.ms < transaction.timeout.ms`? > Adjust transaction timeout according to commit interval on Streams EOS > ---------------------------------------------------------------------- > > Key: KAFKA-12499 > URL: https://issues.apache.org/jira/browse/KAFKA-12499 > Project: Kafka > Issue Type: Improvement > Components: streams > Reporter: Boyang Chen > Assignee: Boyang Chen > Priority: Major > Fix For: 3.0.0 > > > The transaction timeout is set to 1 minute by default on Producer today, > while the commit interval on the other hand could be set to a very large > value, which makes the stream always hit transaction timeout and drop into > rebalance. We should increase the transaction timeout correspondingly when > commit interval is large. > On the other hand, broker could have a limit on the max transaction timeout > to be set. If we scale up client transaction timeout over the limit, stream > will fail due to INVALID_TRANSACTION_TIMEOUT. To alleviate this problem, > user could define their own customized transaction timeout to avoid hitting > the limit, so we should still respect what user configures in the override. > The new rule for configuring transaction timeout should look like: > 1. If transaction timeout is set in streams config, use it > 2. if not, transaction_timeout = max(default_transaction_timeout, 10 * > commit_interval) > Additionally if INVALID_TRANSACTION_TIMEOUT was thrown on Streams when > calling initTransaction(), we should wrap the exception to inform user that > their setting for commit interval could potentially be too high and should > adjust. -- This message was sent by Atlassian Jira (v8.3.4#803005)