Guozhang Wang created KAFKA-6347:
------------------------------------
Summary: Starting offset breach based log segment deletion never
considers active segment
Key: KAFKA-6347
URL: https://issues.apache.org/jira/browse/KAFKA-6347
Project: Kafka
Issue Type: Improvement
Components: core
Reporter: Guozhang Wang
This observation is related to KIP-107: in
{{Log#deleteLogStartOffsetBreachedSegments}}, we designed the predicate to
enforce that the current segment can only be considered for deletion, when it
1) has the next segment, 2) the next segment's starting offset is no larger
than the log start offset.
{code}
def shouldDelete(segment: LogSegment, nextSegmentOpt: Option[LogSegment]) =
nextSegmentOpt.exists(_.baseOffset <= logStartOffset)
{code}
This means that, the current active segment would never be considered for
purging. Normally this is OK given that we will eventually roll out a new
segment. However, with the default size of segment of 1GB it means that with
the purge data API we are in the worst case not being able to purge the data
for up to 1GB per topic partition.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)