开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

Flink CDC这种报错又是因为啥?

Flink CDC这种报错又是因为啥?Caused by: java.lang.RuntimeException: SplitFetcher thread 0 received unexpected exception while polling the records
at org.apache.flink.connector.base.source.reader.fetcher.SplitFetcher.runOnce(SplitFetcher.java:165) ~[flink-connector-files-1.17.1.jar:1.17.1]
at org.apache.flink.connector.base.source.reader.fetcher.SplitFetcher.run(SplitFetcher.java:114) ~[flink-connector-files-1.17.1.jar:1.17.1]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) ~[?:?]
at java.util.concurrent.FutureTask.run(Unknown Source) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[?:?]
... 1 more
Caused by: io.debezium.DebeziumException: The db history topic or its content is fully or partially missing. Please check database history topic configuration and re-execute the snapshot.
at io.debezium.relational.HistorizedRelationalDatabaseSchema.recover(HistorizedRelationalDatabaseSchema.java:59) ~[flink-sql-connector-mysql-cdc-2.4.2.jar:2.4.2]
at io.debezium.schema.HistorizedDatabaseSchema.recover(HistorizedDatabaseSchema.java:38) ~[flink-sql-connector-mysql-cdc-2.4.2.jar:2.4.2]

展开
收起
真的很搞笑 2023-12-01 10:32:08 103 0
4 条回答
写回答
取消 提交回答
  • 这个报错是由于Debezium在恢复数据库历史记录时遇到了问题。具体来说,可能是数据库历史主题或其内容完全或部分丢失。请检查数据库历史主题的配置并重新执行快照。

    2023-12-02 16:22:08
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    这个报错是由于Flink CDC在同步过程中遇到了问题。具体来说,是因为Debezium在尝试恢复数据库历史记录时遇到了问题。错误信息中提到了数据库历史主题或其内容完全或部分缺失,需要检查数据库历史主题的配置并重新执行快照。

    要解决这个问题,你可以尝试以下方法:

    1. 检查数据库历史主题的配置,确保它指向正确的Kafka主题。
    2. 确保Kafka集群正常运行,没有出现故障或分区丢失的情况。
    3. 如果问题仍然存在,可以尝试升级Flink CDC和Debezium的版本,看看是否能解决问题。
    2023-12-01 21:24:08
    赞同 展开评论 打赏
  • 这个错误信息表明在Flink CDC同步过程中,SplitFetcher线程遇到了问题,导致无法正确地从数据源中读取记录。它是在尝试恢复数据库历史时抛出的异常。错误的原因可能是:

    1. 数据库历史主题不存在或不完整:这可能是因为在Kafka集群中找不到用于存储数据库变更历史的主题,或者该主题的内容不完整。请检查你的Flink CDC配置和Kafka集群,确保数据库历史主题设置正确,并且内容完整。

    2. 配置错误:请确认你是否已经正确设置了与数据库历史相关的参数,如database.history.kafka.topicdatabase.history.store.only.monitored.tables.ddl等。

    3. 网络问题:如果你的Flink CDC任务与Kafka集群之间的网络连接不稳定,可能会导致这类问题。请检查网络连接和防火墙设置,确保没有阻止通信。

    4. 权限问题:确认Flink CDC作业有足够的权限来访问和写入Kafka集群中的数据库历史主题。

    5. 版本兼容性问题:确保使用的Flink CDC版本和Kafka版本是兼容的。某些版本之间可能存在不兼容的问题。

    6. Kafka集群问题:如果Kafka集群本身存在问题,例如节点故障或磁盘空间不足,也可能会导致这种错误。请检查Kafka集群的状态和日志。

    7. 其他软件包冲突:如果使用了其他的库或框架,它们可能会影响Flink CDC的行为。考虑移除这些额外的依赖项,看看是否可以解决问题。

    2023-12-01 15:40:12
    赞同 展开评论 打赏
  • 重新全增量跑一下,应该遇到一些ddl修改,此回答整理自钉群“Flink CDC 社区”

    2023-12-01 11:33:30
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    Flink CDC Meetup PPT - 龚中强 立即下载
    Flink CDC Meetup PPT - 王赫 立即下载
    Flink CDC Meetup PPT - 覃立辉 立即下载