Class MetadataUpdateEvent
java.lang.Object
org.apache.flink.connector.kafka.dynamic.source.MetadataUpdateEvent
- All Implemented Interfaces:
Serializable,org.apache.flink.api.connector.source.SourceEvent
@Internal
public class MetadataUpdateEvent
extends Object
implements org.apache.flink.api.connector.source.SourceEvent
Signals
DynamicKafkaSourceReader to stop their underlying readers. The restart process is
as follows:
1. Detect metadata change in enumerator 2. Stop sub enumerators and don't snapshot state 3. Send this event to all readers 4. Stop sub readers and snapshot state (offsets) 5. Start new sub enumerators with clean state and do total split reassignment to readers 6. Readers obtain splits, starting sub readers dynamically, and do reconciliation of starting offsets with the cached offsets
We don't snapshot enumerator state because we want to reassign previously assigned splits. After restart, readers need to reinitialize the sub readers by using the received splits.
- See Also: