[ https://issues.apache.org/jira/browse/KAFKA-9156?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17635367#comment-17635367 ]
Bob Tiernay commented on KAFKA-9156: ------------------------------------ We too are hitting this on AWS MSK Kafka version 2.8.1: {code:java} ERROR Uncaught exception in scheduled task 'kafka-log-retention' (kafka.utils.KafkaScheduler) java.nio.BufferOverflowException at java.base/java.nio.Buffer.nextPutIndex(Buffer.java:674) at java.base/java.nio.DirectByteBuffer.putLong(DirectByteBuffer.java:882) at kafka.log.TimeIndex.$anonfun$maybeAppend$1(TimeIndex.scala:134) at kafka.log.TimeIndex.maybeAppend(TimeIndex.scala:114) at kafka.log.LogSegment.onBecomeInactiveSegment(LogSegment.scala:506) at kafka.log.Log.$anonfun$roll$8(Log.scala:2066) at kafka.log.Log.$anonfun$roll$8$adapted(Log.scala:2066) at scala.Option.foreach(Option.scala:437) at kafka.log.Log.$anonfun$roll$2(Log.scala:2066) at kafka.log.Log.roll(Log.scala:2482) at kafka.log.Log.$anonfun$deleteSegments$2(Log.scala:1859) at kafka.log.Log.deleteSegments(Log.scala:2482) at kafka.log.Log.deleteRetentionMsBreachedSegments(Log.scala:1847) at kafka.log.Log.deleteOldSegments(Log.scala:1916) at kafka.log.LogManager.$anonfun$cleanupLogs$3(LogManager.scala:1092) at kafka.log.LogManager.$anonfun$cleanupLogs$3$adapted(LogManager.scala:1089) at scala.collection.immutable.List.foreach(List.scala:333) at kafka.log.LogManager.cleanupLogs(LogManager.scala:1089) at kafka.log.LogManager.$anonfun$startupWithConfigOverrides$2(LogManager.scala:429) at kafka.utils.KafkaScheduler.$anonfun$schedule$2(KafkaScheduler.scala:114) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) {code} when this happens, disk starts to fill up and exhaust until a restart: !image-2022-11-17-09-02-20-774.png! > LazyTimeIndex & LazyOffsetIndex may cause niobufferoverflow in concurrent > state > ------------------------------------------------------------------------------- > > Key: KAFKA-9156 > URL: https://issues.apache.org/jira/browse/KAFKA-9156 > Project: Kafka > Issue Type: Bug > Components: core > Affects Versions: 2.3.0, 2.3.1 > Reporter: shilin Lu > Assignee: Alex Mironov > Priority: Blocker > Labels: regression > Fix For: 2.4.0, 2.3.2 > > Attachments: image-2019-11-07-17-42-13-852.png, > image-2019-11-07-17-44-05-357.png, image-2019-11-07-17-46-53-650.png, > image-2022-11-17-09-02-20-774.png > > > !image-2019-11-07-17-42-13-852.png! > this timeindex get function is not thread safe ,may cause create some > timeindex. > !image-2019-11-07-17-44-05-357.png! > When create timeindex not exactly one ,may cause mappedbytebuffer position to > end. Then write index entry to this mmap file will cause > java.nio.BufferOverflowException. > > !image-2019-11-07-17-46-53-650.png! > > > -- This message was sent by Atlassian Jira (v8.20.10#820010)