[ 
https://issues.apache.org/jira/browse/KAFKA-14657?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17681416#comment-17681416
 ] 

Justine Olshan commented on KAFKA-14657:
----------------------------------------

Is the issue here that it appears the command failed? The fencing actually 
taking place is fine, its just unclear it worked because of the error?

> Admin.fenceProducers fails when Producer has ongoing transaction - but 
> Producer gets fenced
> -------------------------------------------------------------------------------------------
>
>                 Key: KAFKA-14657
>                 URL: https://issues.apache.org/jira/browse/KAFKA-14657
>             Project: Kafka
>          Issue Type: Bug
>          Components: admin
>            Reporter: Edoardo Comar
>            Priority: Major
>         Attachments: FenceProducerDuringTx.java, FenceProducerOutsideTx.java
>
>
> Admin.fenceProducers() 
> fails with a ConcurrentTransactionsException if invoked when a Producer has a 
> transaction ongoing.
> However, further attempts by that producer to produce fail with 
> InvalidProducerEpochException and the producer is not re-usable, 
> cannot abort/commit as it is fenced.
> An InvalidProducerEpochException is also logged as error on the broker
> [2023-01-27 17:16:32,220] ERROR [ReplicaManager broker=1] Error processing 
> append operation on partition topic-0 (kafka.server.ReplicaManager)
> org.apache.kafka.common.errors.InvalidProducerEpochException: Epoch of 
> producer 1062 at offset 84 in topic-0 is 0, which is smaller than the last 
> seen epoch
>  
> Conversely, if Admin.fenceProducers() 
> is invoked while there is no open transaction, the call succeeds and further 
> attempts by that producer to produce fail with ProducerFenced.
> see attached snippets
> As the caller of Admin.fenceProducers() is likely unaware of the producers 
> state, the call should succeed regardless



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to