Hi Min Since kafka consumer would store KafkaTopicPartition [1] within checkpoint, you cannot load previous state if you changed the kafka topic name.
If you assign operator-id to previous stateful operator and splits into two operator but still maintain one new operator as previous operator-id, Flink would try to assign previous state to that new operator. Otherwise, previous state would not match any operator and you need to consider allow non-restored state if choose to resume from previous checkpoint/savepoint [3]. [1] https://github.com/apache/flink/blob/b290230662fa1aa38909aed40ac85eaf843e1d1c/flink-connectors/flink-connector-kafka-base/src/main/java/org/apache/flink/streaming/connectors/kafka/FlinkKafkaConsumerBase.java#L902 [2] https://ci.apache.org/projects/flink/flink-docs-stable/ops/state/savepoints.html#assigning-operator-ids [3] https://ci.apache.org/projects/flink/flink-docs-stable/ops/state/savepoints.html#what-happens-if-i-delete-an-operator-that-has-state-from-my-job Best Yun Tang From: "min....@ubs.com" <min....@ubs.com> Date: Thursday, November 21, 2019 at 5:19 PM To: "user@flink.apache.org" <user@flink.apache.org> Subject: Savepoints and checkpoints Hi, Are Flink savepoints and checkpoitns still vlaid after some data entity changes e.g. Kafka topic name changes? I expect the answer is "No"? Similarly, are Flink savepoints and checkpoitns still valid after some job graph changes e.g. one stateful operator splits into two? I expect the answer is "No"? Regards, Min