Rion Williams
10/20/2023, 7:24 PM__transaction_state Kafka topic only had a default retention of an hour (<http://retention.ms|retention.ms> = 3600000), however I have several timeouts defined in my Flink jobs related to transactions that are greater than this default timeout (<http://transaction.timeout.ms|transaction.timeout.ms> = 86400000 ). Since transactions are ultimately backed by Kafka and I’m assuming the __transaction_state is it safe to assumed I’d need the retention for that topic to match my maximum timeout?
I suspect this could explain some of the frequent expired transactions I’ve been encountering, but wanted to try and verify it.Martijn Visser
10/20/2023, 7:33 PMMartijn Visser
10/20/2023, 7:34 PMYou need to make sure that:
1.The value for transaction.max.timeout.ms on your Kafka broker is beyond the maximum expected Flink and/or Kafka downtime.
2. The value for transaction.timeout.ms is lower than transaction.max.timeout.ms.
Rion Williams
10/20/2023, 7:42 PM<http://transaction.max.timeout.ms|transaction.max.timeout.ms> corresponds to what would be the retention for the __transaction_state topic? We’re using the Strimzi operator for Kafka, so I just want to make sure that I’m setting the appropriate values in the appropriate places.Martijn Visser
10/20/2023, 7:44 PMRion Williams
10/20/2023, 7:45 PMInvalidMappingPidExceptions or whatever they are, so seeing this makes a lot more sense.Rion Williams
10/20/2023, 7:45 PM