Justine Olshan created KAFKA-16570:
--------------------------------------
Summary: FenceProducers API returns "unexpected error" when
successful
Key: KAFKA-16570
URL: https://issues.apache.org/jira/browse/KAFKA-16570
Project: Kafka
Issue Type: Bug
Reporter: Justine Olshan
Assignee: Justine Olshan
When we want to fence a producer using the admin client, we send an
InitProducerId request.
There is logic in that API to fence (and abort) any ongoing transactions and
that is what the API relies on to fence the producer. However, this handling
also returns CONCURRENT_TRANSACTIONS. In normal usage, this is good because we
want to actually get a new producer ID and want to retry until the the ID is
supplied or we time out.
[https://github.com/apache/kafka/blob/5193eb93237ba9093ae444d73a1eaa2d6abcc9c1/core/src/main/scala/kafka/coordinator/transaction/TransactionCoordinator.scala#L170]
In the case of fence producer, we don't retry and instead we have no handling
for concurrent transactions and log a message about an unexpected error.
[https://github.com/confluentinc/ce-kafka/blob/b626db8bd94fe971adef3551518761a7be7de454/clients/src/main/java/org/apache/kafka/clients/admin/internals/FenceProducersHandler.java#L112]
This is not unexpected though and the operation was successful. We should just
swallow this error and treat this as a successful run of the command.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)