Sergey Bobrenok created KAFKA-8681:
--------------------------------------
Summary: IllegalStateException in GroupMetadataManager during
transactional offset commit
Key: KAFKA-8681
URL: https://issues.apache.org/jira/browse/KAFKA-8681
Project: Kafka
Issue Type: Bug
Components: core
Affects Versions: 2.0.1
Reporter: Sergey Bobrenok
Kafka cluster: 11 brokers, 5 zk.
Periodically in broker logs appears error message
{code:java}
[2019-07-12 12:18:46,513] INFO [GroupCoordinator 13]: Preparing to rebalance
group xxx with old generation 13588 (__consumer_offsets-9)
(kafka.coordinator.group.GroupCoordinator)
[2019-07-12 12:18:46,513] INFO [GroupCoordinator 13]: Group xxx with generation
13589 is now empty (__consumer_offsets-9)
(kafka.coordinator.group.GroupCoordinator)
[2019-07-12 12:19:15,323] ERROR Uncaught exception in scheduled task
'handleTxnCompletion-225002' (kafka.utils.KafkaScheduler)
java.lang.IllegalStateException: Trying to complete a transactional offset
commit for producerId 225002 and groupId yyy even though the offset commit
record itself hasn't been appended to the log.
at
kafka.coordinator.group.GroupMetadata$$anonfun$completePendingTxnOffsetCommit$1$$anonfun$apply$1.apply(GroupMetadata.scala:400)
at
kafka.coordinator.group.GroupMetadata$$anonfun$completePendingTxnOffsetCommit$1$$anonfun$apply$1.apply(GroupMetadata.scala:398)
at
scala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:130)
at
scala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:130)
at
scala.collection.mutable.HashTable$class.foreachEntry(HashTable.scala:236)
at scala.collection.mutable.HashMap.foreachEntry(HashMap.scala:40)
at scala.collection.mutable.HashMap.foreach(HashMap.scala:130)
at
kafka.coordinator.group.GroupMetadata$$anonfun$completePendingTxnOffsetCommit$1.apply(GroupMetadata.scala:398)
at
kafka.coordinator.group.GroupMetadata$$anonfun$completePendingTxnOffsetCommit$1.apply(GroupMetadata.scala:397)
at scala.Option.foreach(Option.scala:257)
at
kafka.coordinator.group.GroupMetadata.completePendingTxnOffsetCommit(GroupMetadata.scala:397)
at
kafka.coordinator.group.GroupMetadataManager$$anonfun$handleTxnCompletion$1$$anonfun$apply$34.apply(GroupMetadataManager.scala:834)
at kafka.utils.CoreUtils$.inLock(CoreUtils.scala:251)
at kafka.coordinator.group.GroupMetadata.inLock(GroupMetadata.scala:188)
at
kafka.coordinator.group.GroupMetadataManager$$anonfun$handleTxnCompletion$1.apply(GroupMetadataManager.scala:832)
at
kafka.coordinator.group.GroupMetadataManager$$anonfun$handleTxnCompletion$1.apply(GroupMetadataManager.scala:830)
at scala.collection.mutable.HashSet.foreach(HashSet.scala:78)
at
kafka.coordinator.group.GroupMetadataManager.handleTxnCompletion(GroupMetadataManager.scala:830)
at
kafka.coordinator.group.GroupMetadataManager$$anonfun$scheduleHandleTxnCompletion$1.apply$mcV$sp(GroupMetadataManager.scala:825)
at
kafka.utils.KafkaScheduler$$anonfun$1.apply$mcV$sp(KafkaScheduler.scala:114)
at kafka.utils.CoreUtils$$anon$1.run(CoreUtils.scala:63)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
[2019-07-12 12:19:41,620] INFO [Log partition=zzz-changelog-42,
dir=/var/storage/kafka] Deleting segment 0 (kafka.log.Log)
[2019-07-12 12:19:41,620] INFO [Log partition=zzz-changelog-42,
dir=/var/storage/kafka] Deleting segment 35471 (kafka.log.Log)
{code}
It doesn't seems harmless. I didn't find something unordinary about the
transactions though. No errors in producer's log either. The problem always
affects the same consumer group.
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)