Aleksandr Savonin created FLINK-40469:
-----------------------------------------

             Summary: DynamicKafkaSource can lose splits when checkpointing 
during recovery reassignment
                 Key: FLINK-40469
                 URL: https://issues.apache.org/jira/browse/FLINK-40469
             Project: Flink
          Issue Type: Bug
          Components: Connectors / Kafka
            Reporter: Aleksandr Savonin


After recovery, readers report their restored splits to 
DynamicKafkaSourceEnumerator and temporarily hold no splits while metadata 
discovery is pending.

These reports are kept only in memory. If a checkpoint completes during this 
window and the job later restores from it, the reader state is empty while the 
sub-enumerator still marks the splits as assigned. The splits are therefore 
never reassigned, causing silent data loss.

Persist pending reader-reported splits in DynamicKafkaSourceEnumState and 
restore them through the existing reassignment flow, preserving their 
checkpointed offsets.



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

Reply via email to