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

Kamal Chandraprakash updated KAFKA-15352:
-----------------------------------------
    Description: 
In Kafka-14888, the remote log segments are deleted which breaches the 
retention time/size before updating the log-start-offset. In middle of 
deletion, if the consumer starts to read from the beginning of the topic, then 
it will fail to read the messages and UNKNOWN_SERVER_ERROR will be thrown back 
to the consumer.

To ensure consistency, similar to local log segments where the actual segments 
are deleted after {{{}segment.delete.delay.ms{}}}, we should update the 
log-start-offset first before deleting the remote log segment.

See the [PR#13561|https://github.com/apache/kafka/pull/13561] and 
[comment|https://github.com/apache/kafka/pull/13561#discussion_r1293086543] for 
more details.

Case-2:
The old-leader (follower) can delete the remote log segment in the middle of 
leader election. We need to update the log-start-offset metadata for this case.
See this comment 
[https://github.com/apache/kafka/pull/13561#discussion_r1293081560]

  was:
In Kafka-14888, the remote log segments are deleted which breaches the 
retention time/size before updating the log-start-offset. In middle of 
deletion, if the consumer starts to read from the beginning of the topic, then 
it will fail to read the messages and UNKNOWN_SERVER_ERROR will be thrown back 
to the consumer.

To ensure consistency, similar to local log segments where the actual segments 
are deleted after {{segment.delete.delay.ms}}, we should update the 
log-start-offset first before deleting the remote log segment.

See the [PR#13561|https://github.com/apache/kafka/pull/13561] and 
[comment|https://github.com/apache/kafka/pull/13561#discussion_r1293086543] for 
more details.


> Ensure consistency while deleting the remote log segments
> ---------------------------------------------------------
>
>                 Key: KAFKA-15352
>                 URL: https://issues.apache.org/jira/browse/KAFKA-15352
>             Project: Kafka
>          Issue Type: Sub-task
>            Reporter: Kamal Chandraprakash
>            Assignee: Kamal Chandraprakash
>            Priority: Blocker
>             Fix For: 3.6.0
>
>
> In Kafka-14888, the remote log segments are deleted which breaches the 
> retention time/size before updating the log-start-offset. In middle of 
> deletion, if the consumer starts to read from the beginning of the topic, 
> then it will fail to read the messages and UNKNOWN_SERVER_ERROR will be 
> thrown back to the consumer.
> To ensure consistency, similar to local log segments where the actual 
> segments are deleted after {{{}segment.delete.delay.ms{}}}, we should update 
> the log-start-offset first before deleting the remote log segment.
> See the [PR#13561|https://github.com/apache/kafka/pull/13561] and 
> [comment|https://github.com/apache/kafka/pull/13561#discussion_r1293086543] 
> for more details.
> Case-2:
> The old-leader (follower) can delete the remote log segment in the middle of 
> leader election. We need to update the log-start-offset metadata for this 
> case.
> See this comment 
> [https://github.com/apache/kafka/pull/13561#discussion_r1293081560]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to