You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Jason Gustafson (JIRA)" <ji...@apache.org> on 2018/09/09 01:08:00 UTC

[jira] [Resolved] (KAFKA-7385) Log cleaner crashes when empty batches are retained with idempotent or transactional producers

     [ https://issues.apache.org/jira/browse/KAFKA-7385?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jason Gustafson resolved KAFKA-7385.
------------------------------------
       Resolution: Fixed
    Fix Version/s: 2.0.1

> Log cleaner crashes when empty batches are retained with idempotent or transactional producers
> ----------------------------------------------------------------------------------------------
>
>                 Key: KAFKA-7385
>                 URL: https://issues.apache.org/jira/browse/KAFKA-7385
>             Project: Kafka
>          Issue Type: Bug
>            Reporter: Dhruvil Shah
>            Assignee: Dhruvil Shah
>            Priority: Major
>             Fix For: 2.0.1
>
>
> During log compaction, we retain an empty header if the batch contains the last sequence number for a particular producer. When such headers are the only messages retained, we do not update state such as `maxOffset` in `MemoryRecords#filterTo` causing us to append these into the cleaned segment with `largestOffset` = -1. This throws a `LogSegmentOffsetOverflowException` for a segment that does not actually have an overflow. When we attempt to split the segment, the log cleaner dies.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)