около 240 сек
commit.interval.ms - 0
у топиков replication.factor-3
Задержки по работе минимальные, брокер кафки дышит ровно, и из всей цепочки только на одном мкс получаем в процессе это исключение:
org.apache.kafka.common.errors.InvalidProducerEpochException: Producer with transactionalId 'hub-router-5c03929d-b3d3-4600-9855-16897a2c7874-3' and ProducerIdAndEpoch(producerId=172690, epoch=0) attempted to produce with an old epoch
Видимо, у тебя реплика с тем же transactional id из-за чего случился fencing.
Это странно так как exactly_once сам генерит transaction_Id для каждого инстанса
Я не большой специалист в kafka streams, но кажется, что он генерируется на основе маски, которая передается в конфиге и таска. https://github.com/a0x8o/kafka/blob/fe51708ade3cdf4fe9640c205c66e3dd1a110062/streams/src/main/java/org/apache/kafka/streams/processor/internals/StreamThread.java#L453 Полный рандом нельзя делать, кмк, так как не получится определить случился ли fencing. Лучше, наверное, в чат кафки сходить.
Обсуждают сегодня