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

我在用Flink CDC的加表功能的时候遇到了如下报错,也没找到相关的解决方法?

我在用Flink CDC的加表功能的时候遇到了如下报错,操作顺序是a表全部同步完,然后停止,加b表,b表可以成功加入,等b表全部同步完,再加c表,然后就出现了下面的报错,网上也没找到相关的解决方法
The assigner is not ready to offer finished split information, this should not be called

展开
收起
真的很搞笑 2023-10-23 14:48:31 86 0
3 条回答
写回答
取消 提交回答
  • 这个报错是由 Flink 的 Assigner(分配器)引起的。根据错误消息所描述的,“The assigner is not ready to offer finished split information, this should not be called” 表明 Assigner 还没有准备好提供已完成的 Split 信息。

    此错误可能有多种原因,以下是一些可能的解决方法:

    1. 版本兼容性:请确保 Flink CDC 和 Flink 版本的兼容性。请检查 Flink CDC 的版本是否与正在使用的 Flink 版本兼容,如果不兼容,请尝试使用兼容的版本。

    2. 分配器配置:在 Flink CDC 中,Assigner 负责将任务分配给不同的子任务。确保 Flink CDC 的分配器配置正确,并且与任务的操作顺序相匹配。检查 Flink CDC 的配置文件中的分配器相关的参数是否正确设置。

    3. 并发设置:检查 Flink CDC 配置中的并发设置是否正确。分配器可能无法提供完成的 Split 信息,是因为并发设置导致的冲突或不一致。尝试调整并发设置的值,并重新执行任务。

    4. 停用并重启任务:如果上述方法都无效,尝试停止并重新启动 Flink CDC 任务。有时重新启动任务可以解决特定的分配问题。

    注意,具体的解决方法可能与您的具体情况和配置有关。如果以上解决方法都不起作用,建议您查看 Flink 或 Flink CDC 的文档、源代码或讨论论坛,以寻找更多关于此问题的详细信息和解决方案。

    2023-10-24 13:02:07
    赞同 展开评论 打赏
  • 用最新的master分支自己打包试试,我记得国庆前进了个bugfix,此回答整理自钉群“Flink CDC 社区”

    2023-10-24 08:17:23
    赞同 展开评论 打赏
  • 这个报错信息表示Flink CDC的分配器(assigner)还没有准备好提供已完成的分片信息。这可能是因为Flink CDC在处理表之间的同步时出现了问题。

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

    1. 检查你的Flink CDC配置,确保所有相关的设置都是正确的。特别是关于表之间的同步顺序和时间间隔的配置。

    2. 查看Flink CDC的日志文件,查找更详细的错误信息。这可能会帮助你找到问题的根源。

    3. 如果可能的话,尝试减少表之间的同步频率,以减轻Flink CDC的压力。

    2023-10-23 16:45:45
    赞同 展开评论 打赏

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

相关产品

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

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