public int maxTransactionTimeoutMs() {
        return maxTransactionTimeoutMs;
    }
Maintains a mapping from ProducerIds to metadata about the last appended entries (e.g.
epoch, sequence number, last offset, etc.)
<p>
The sequence number is the last number successfully appended to the partition for the given identifier.
The epoch is used for fencing against zombie writers. The offset is the one of the last successful message
appended to the partition.
<p>
As long as a producer id is contained in the map, the corresponding producer can continue to write data.
However, producer ids can be expired due to lack of recent use or if the last written entry has been deleted from
the log (e.g. if the retention policy is "delete"). For compacted topics, the log cleaner will ensure
that the most recent entry from a given producer id is retained in the log provided it hasn't expired due to
age. This ensures that producer ids will not be expired until either the max expiration time has been reached,
or if the topic also is configured for deletion, the segment containing the last written offset has
been deleted.
storage/src/main/java/org/apache/kafka/storage/internals/log/ProducerStateManager.java