[ https://issues.apache.org/jira/browse/KAFKA-10631?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Bruno Cadonna updated KAFKA-10631: ---------------------------------- Description: The transaction manager does currently not handle producer fenced errors returned from a offset commit request. We found this bug because we encountered the following exception in our soak cluster: {code:java} org.apache.kafka.streams.errors.StreamsException: Error encountered trying to commit a transaction [stream-thread [i-037c09b3c48522d8d-StreamThread-3] task [0_0]] at org.apache.kafka.streams.processor.internals.StreamsProducer.commitTransaction(StreamsProducer.java:256) at org.apache.kafka.streams.processor.internals.TaskManager.commitOffsetsOrTransaction(TaskManager.java:1050) at org.apache.kafka.streams.processor.internals.TaskManager.commit(TaskManager.java:1013) at org.apache.kafka.streams.processor.internals.StreamThread.maybeCommit(StreamThread.java:886) at org.apache.kafka.streams.processor.internals.StreamThread.runOnce(StreamThread.java:677) at org.apache.kafka.streams.processor.internals.StreamThread.runLoop(StreamThread.java:553) at org.apache.kafka.streams.processor.internals.StreamThread.run(StreamThread.java:512) [2020-10-22T04:09:54+02:00] (streams-soak-2-7-eos-alpha_soak_i-037c09b3c48522d8d_streamslog) Caused by: org.apache.kafka.common.KafkaException: Unexpected error in TxnOffsetCommitResponse: There is a newer producer with the same transactionalId which fences the current one. at org.apache.kafka.clients.producer.internals.TransactionManager$TxnOffsetCommitHandler.handleResponse(TransactionManager.java:1726) at org.apache.kafka.clients.producer.internals.TransactionManager$TxnRequestHandler.onComplete(TransactionManager.java:1278) at org.apache.kafka.clients.ClientResponse.onComplete(ClientResponse.java:109) at org.apache.kafka.clients.NetworkClient.completeResponses(NetworkClient.java:584) at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:576) at org.apache.kafka.clients.producer.internals.Sender.maybeSendAndPollTransactionalRequest(Sender.java:415) at org.apache.kafka.clients.producer.internals.Sender.runOnce(Sender.java:313) at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:240) at java.lang.Thread.run(Thread.java:748) {code} was: The transaction manager does currently not handle producer fenced errors returned from a offset commit request. We found this bug because we saw the following exception in our soak cluster: {code:java} org.apache.kafka.streams.errors.StreamsException: Error encountered trying to commit a transaction [stream-thread [i-037c09b3c48522d8d-StreamThread-3] task [0_0]] at org.apache.kafka.streams.processor.internals.StreamsProducer.commitTransaction(StreamsProducer.java:256) at org.apache.kafka.streams.processor.internals.TaskManager.commitOffsetsOrTransaction(TaskManager.java:1050) at org.apache.kafka.streams.processor.internals.TaskManager.commit(TaskManager.java:1013) at org.apache.kafka.streams.processor.internals.StreamThread.maybeCommit(StreamThread.java:886) at org.apache.kafka.streams.processor.internals.StreamThread.runOnce(StreamThread.java:677) at org.apache.kafka.streams.processor.internals.StreamThread.runLoop(StreamThread.java:553) at org.apache.kafka.streams.processor.internals.StreamThread.run(StreamThread.java:512) [2020-10-22T04:09:54+02:00] (streams-soak-2-7-eos-alpha_soak_i-037c09b3c48522d8d_streamslog) Caused by: org.apache.kafka.common.KafkaException: Unexpected error in TxnOffsetCommitResponse: There is a newer producer with the same transactionalId which fences the current one. at org.apache.kafka.clients.producer.internals.TransactionManager$TxnOffsetCommitHandler.handleResponse(TransactionManager.java:1726) at org.apache.kafka.clients.producer.internals.TransactionManager$TxnRequestHandler.onComplete(TransactionManager.java:1278) at org.apache.kafka.clients.ClientResponse.onComplete(ClientResponse.java:109) at org.apache.kafka.clients.NetworkClient.completeResponses(NetworkClient.java:584) at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:576) at org.apache.kafka.clients.producer.internals.Sender.maybeSendAndPollTransactionalRequest(Sender.java:415) at org.apache.kafka.clients.producer.internals.Sender.runOnce(Sender.java:313) at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:240) at java.lang.Thread.run(Thread.java:748) {code} > ProducerFencedException is not Handled on Offest Commit > ------------------------------------------------------- > > Key: KAFKA-10631 > URL: https://issues.apache.org/jira/browse/KAFKA-10631 > Project: Kafka > Issue Type: Bug > Components: clients > Affects Versions: 2.7.0 > Reporter: Bruno Cadonna > Priority: Blocker > > The transaction manager does currently not handle producer fenced errors > returned from a offset commit request. > We found this bug because we encountered the following exception in our soak > cluster: > {code:java} > org.apache.kafka.streams.errors.StreamsException: Error encountered trying to > commit a transaction [stream-thread [i-037c09b3c48522d8d-StreamThread-3] task > [0_0]] > at > org.apache.kafka.streams.processor.internals.StreamsProducer.commitTransaction(StreamsProducer.java:256) > at > org.apache.kafka.streams.processor.internals.TaskManager.commitOffsetsOrTransaction(TaskManager.java:1050) > at > org.apache.kafka.streams.processor.internals.TaskManager.commit(TaskManager.java:1013) > at > org.apache.kafka.streams.processor.internals.StreamThread.maybeCommit(StreamThread.java:886) > at > org.apache.kafka.streams.processor.internals.StreamThread.runOnce(StreamThread.java:677) > at > org.apache.kafka.streams.processor.internals.StreamThread.runLoop(StreamThread.java:553) > at > org.apache.kafka.streams.processor.internals.StreamThread.run(StreamThread.java:512) > [2020-10-22T04:09:54+02:00] > (streams-soak-2-7-eos-alpha_soak_i-037c09b3c48522d8d_streamslog) Caused by: > org.apache.kafka.common.KafkaException: Unexpected error in > TxnOffsetCommitResponse: There is a newer producer with the same > transactionalId which fences the current one. > at > org.apache.kafka.clients.producer.internals.TransactionManager$TxnOffsetCommitHandler.handleResponse(TransactionManager.java:1726) > at > org.apache.kafka.clients.producer.internals.TransactionManager$TxnRequestHandler.onComplete(TransactionManager.java:1278) > at > org.apache.kafka.clients.ClientResponse.onComplete(ClientResponse.java:109) > at > org.apache.kafka.clients.NetworkClient.completeResponses(NetworkClient.java:584) > at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:576) > at > org.apache.kafka.clients.producer.internals.Sender.maybeSendAndPollTransactionalRequest(Sender.java:415) > at > org.apache.kafka.clients.producer.internals.Sender.runOnce(Sender.java:313) > at > org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:240) > at java.lang.Thread.run(Thread.java:748) > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)