[ https://issues.apache.org/jira/browse/KAFKA-9133?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16969589#comment-16969589 ]
ASF GitHub Bot commented on KAFKA-9133: --------------------------------------- hachikuji commented on pull request #7662: KAFKA-9133; Cleaner should handle log start offset larger than active segment base offset URL: https://github.com/apache/kafka/pull/7662 This was a regression in 2.3.1. In the case of a DeleteRecords call, the log start offset may be higher than the active segment base offset. The cleaner should allow for this case gracefully. ### Committer Checklist (excluded from commit message) - [ ] Verify design and implementation - [ ] Verify test coverage and CI build status - [ ] Verify documentation (including upgrade notes) ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > LogCleaner thread dies with: currentLog cannot be empty on an unexpected > exception > ---------------------------------------------------------------------------------- > > Key: KAFKA-9133 > URL: https://issues.apache.org/jira/browse/KAFKA-9133 > Project: Kafka > Issue Type: Bug > Components: log cleaner > Affects Versions: 2.3.1 > Reporter: Karolis Pocius > Assignee: Jason Gustafson > Priority: Blocker > Fix For: 2.4.0, 2.3.2 > > > Log cleaner thread dies without a clear reference to which log is causing it: > {code} > [2019-11-02 11:59:59,078] INFO Starting the log cleaner (kafka.log.LogCleaner) > [2019-11-02 11:59:59,144] INFO [kafka-log-cleaner-thread-0]: Starting > (kafka.log.LogCleaner) > [2019-11-02 11:59:59,199] ERROR [kafka-log-cleaner-thread-0]: Error due to > (kafka.log.LogCleaner) > java.lang.IllegalStateException: currentLog cannot be empty on an unexpected > exception > at kafka.log.LogCleaner$CleanerThread.cleanFilthiestLog(LogCleaner.scala:346) > at kafka.log.LogCleaner$CleanerThread.doWork(LogCleaner.scala:307) > at kafka.utils.ShutdownableThread.run(ShutdownableThread.scala:89) > Caused by: java.lang.IllegalArgumentException: Illegal request for non-active > segments beginning at offset 5033130, which is larger than the active > segment's base offset 5019648 > at kafka.log.Log.nonActiveLogSegmentsFrom(Log.scala:1933) > at > kafka.log.LogCleanerManager$.maxCompactionDelay(LogCleanerManager.scala:491) > at > kafka.log.LogCleanerManager.$anonfun$grabFilthiestCompactedLog$4(LogCleanerManager.scala:184) > at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:238) > at scala.collection.immutable.List.foreach(List.scala:392) > at scala.collection.TraversableLike.map(TraversableLike.scala:238) > at scala.collection.TraversableLike.map$(TraversableLike.scala:231) > at scala.collection.immutable.List.map(List.scala:298) > at > kafka.log.LogCleanerManager.$anonfun$grabFilthiestCompactedLog$1(LogCleanerManager.scala:181) > at kafka.utils.CoreUtils$.inLock(CoreUtils.scala:253) > at > kafka.log.LogCleanerManager.grabFilthiestCompactedLog(LogCleanerManager.scala:171) > at kafka.log.LogCleaner$CleanerThread.cleanFilthiestLog(LogCleaner.scala:321) > ... 2 more > [2019-11-02 11:59:59,200] INFO [kafka-log-cleaner-thread-0]: Stopped > (kafka.log.LogCleaner) > {code} > If I try to ressurect it by dynamically bumping {{log.cleaner.threads}} it > instantly dies with the exact same error. > Not sure if this is something KAFKA-8725 is supposed to address. -- This message was sent by Atlassian Jira (v8.3.4#803005)