[Bug] 发生flink 故障转移时 cdc数据丢失
Search before asking
- [X] I searched in the issues and found nothing similar.
Flink version
1.17.1
Flink CDC version
2.4.0
Database and its version
Microsoft SQL Server 2016 (SP3)
Minimal reproduce step
1、 使用如下配置 建立数据源 SqlServerSourceBuilder.SqlServerIncrementalSource<String> sqlServerSource = new SqlServerSourceBuilder() .hostname(parameters.get("source.hostname")) .port(Integer.parseInt(parameters.get("source.port"))) .databaseList(parameters.get("source.databaseList")) .tableList(parameters.get("source.tableList").split(",")) .username(parameters.get("source.username")) .password(parameters.get("source.password")) .deserializer(new JsonDebeziumDeserializationSchema(false,customConverterConfigs)) .startupOptions(StartupOptions.latest()) .build(); env.enableCheckpointing(60000);
DataStreamSource<String> sqlserver =
env.fromSource(sqlServerSource, WatermarkStrategy.noWatermarks(), "sqlserver").setParallelism(1);
后续操作 。。。。。。。。。。。。
2、提交到服务器集群 服务器集群 是 多TaskManager 单jobmanager节点集群 3、在任务过程中 人为重启 taskmanager 4、 cdc任务可以在 秒级 run到其他 task节点上 5 任务继续运行
What did you expect to see?
cdc 数据总量不会缺失
What did you see instead?
数据总量缺失了, 似乎是故障迁移的那几秒的cdc数据丢失了
Anything else?
猜测 1 没有从checkpoint恢复之前的 时间戳。
Are you willing to submit a PR?
- [ ] I'm willing to submit a PR!