Flink报错问题之Flink报错:Table sink 'a' doesn't support consuming update and delete changes which is produced by node如何解决

简介: Flink报错通常是指在使用Apache Flink进行实时数据处理时遇到的错误和异常情况;本合集致力于收集Flink运行中的报错信息和解决策略,以便开发者及时排查和修复问题,优化Flink作业的稳定性。

问题一:实时计算Flink报错org.codehaus.janino.CompilerFactory cannot be cast to org.codehaus.commons.compiler.ICompilerFactory

实时计算Flink报错org.codehaus.janino.CompilerFactory cannot be cast to org.codehaus.commons.compiler.ICompilerFactory



参考答案:

可参考QA:报错:java.lang.ClassCastException: org.codehaus.janino.CompilerFactory cannot be cast to org.codehaus.commons.compiler.ICompilerFactory



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/475322?spm=a2c6h.13066369.question.28.6f064d5cIWWXoh



问题二:Flink报错doesn't support consuming update and delete changes which is produced by node TableSourceScandoesn't support consuming update and delete changes which is produced by node TableSourceScan

Flink报错doesn't support consuming update and delete changes which is produced by node TableSourceScandoesn't support consuming update and delete changes which is produced by node TableSourceScan



参考答案:

语法校验报错,append类型sink无法接收上游update记录。

使用支持写入update记录的sink,如upsert-kafka等。



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/476340?spm=a2c6h.13066369.question.29.6f064d5cyfSb2X



问题三:Flink报错:org.apache.flink.table.api.ValidationException: SQL validation failed. Unable to create a sink for writing table 'xxx'. The cause is following: Unsupported options found for 'sls'.

Flink报错:org.apache.flink.table.api.ValidationException: SQL validation failed. Unable to create a sink for writing table 'xxx'. The cause is following: Unsupported options found for 'sls'.




参考答案:

【报错详情】

Caused by: org.apache.flink.table.api.ValidationException: Unsupported options found for 'sls'.

Unsupported options: xxx Supported options: accessid accesskey baseretrybackofftimems batchgetsize connector consumergroup directmode disabledirectmode endpoint endtime exitafterfinish failonerror fallback_to_old flushintervalms iothreadnum logstore maxblocktimems maxretries

maxretrybackofftimems maxretrytimes nullreplacestr partitionfield project property-version sourcefield starttime starttimems stoptime timefield timezone topicfield

【报错原因】

SLS对应的with参数出现不支持的with参数xxx,或可能写错参数名称导致该异常出现。

【解决方案】

根据官网文档DDL数据定义语句文档进行检查,是否支持对应的参数,或参数名称写的有误。



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/476359?spm=a2c6h.13066369.question.28.6f064d5cl84DEt



问题四:Flink报错java.lang.ClassCastException: org.codehaus.janino.CompilerFactory cannot be cast to org.codehaus.commons.compiler.ICompilerFactory

Flink报错java.lang.ClassCastException: org.codehaus.janino.CompilerFactory cannot be cast to org.codehaus.commons.compiler.ICompilerFactory



参考答案:

本质原因是用户的jar包中,也引入了跟我们冲突的janino依赖。分析下用户jar里面是否有org.codehaus.janino.CompilerFactory。由于在不同机器上的class加载顺序不一样,因此有时候可以运行,有时候出现类冲突。

【解决方案】

在目标作业详情页面右上角,单击编辑后,在页面右侧高级配置面板的更多Flink配置中classloader.parent-first-patterns.additional: org.codehaus.janino



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/476351?spm=a2c6h.13066369.question.31.6f064d5c1wYwEp



问题五:Flink报错:Table sink 'a' doesn't support consuming update and delete changes which is produced by node

Flink报错:Table sink 'a' doesn't support consuming update and delete changes which is produced by node



参考答案:

Flink语法检查报错详情:org.apache.flink.table.api.TableException: Table sink 'xxx' doesn't support consuming update and delete changes which is produced by node xxx(xxx) at

org.apache.flink.table.planner.plan.optimize.traitinference.SatisfyModifyKindSetTraitVisitor.applyTraitToWrapper(SatisfyModifyKindSetTraitVisitor.java:493) at

org.apache.flink.table.planner.plan.optimize.traitinference.SatisfyModifyKindSetTraitVisitor.visit(SatisfyModifyKindSetTraitVisitor.java:345)。

报错原因:append only类型结果表存储(kafka、sls、datahub 等)无法接收上游 update(retract/撤回)记录。

解决方案:上游涉及retract,如:双流 left join、last value、last row、双层 groupAGG等,请使用支持写入update记录的 sink,如upsert kafka、rds、Hologres、hbase等支持主键更新的存储做结果表。



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/476358?spm=a2c6h.13066369.question.30.6f064d5cjrFQFQ

相关实践学习
基于Hologres+Flink搭建GitHub实时数据大屏
通过使用Flink、Hologres构建实时数仓,并通过Hologres对接BI分析工具(以DataV为例),实现海量数据实时分析.
实时计算 Flink 实战课程
如何使用实时计算 Flink 搞定数据处理难题?实时计算 Flink 极客训练营产品、技术专家齐上阵,从开源 Flink功能介绍到实时计算 Flink 优势详解,现场实操,5天即可上手! 欢迎开通实时计算 Flink 版: https://cn.aliyun.com/product/bigdata/sc Flink Forward Asia 介绍: Flink Forward 是由 Apache 官方授权,Apache Flink Community China 支持的会议,通过参会不仅可以了解到 Flink 社区的最新动态和发展计划,还可以了解到国内外一线大厂围绕 Flink 生态的生产实践经验,是 Flink 开发者和使用者不可错过的盛会。 去年经过品牌升级后的 Flink Forward Asia 吸引了超过2000人线下参与,一举成为国内最大的 Apache 顶级项目会议。结合2020年的特殊情况,Flink Forward Asia 2020 将在12月26日以线上峰会的形式与大家见面。
相关文章
|
消息中间件 关系型数据库 MySQL
大数据-117 - Flink DataStream Sink 案例:写出到MySQL、写出到Kafka
大数据-117 - Flink DataStream Sink 案例:写出到MySQL、写出到Kafka
994 0
|
SQL Shell API
实时计算 Flink版操作报错合集之任务提交后出现 "cannot run program "/bin/bash": error=1, 不允许操作" ,是什么原因
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
实时计算 Flink版操作报错合集之任务提交后出现 "cannot run program "/bin/bash": error=1, 不允许操作" ,是什么原因
|
资源调度 监控 关系型数据库
实时计算 Flink版操作报错合集之处理大量Join时报错空指针异常,是什么原因
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
实时计算 Flink版操作报错合集之处理大量Join时报错空指针异常,是什么原因
|
SQL Java Apache
实时计算 Flink版操作报错合集之使用parquet时,怎么解决报错:无法访问到java.uti.Arrays$ArrayList类的私有字段
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
Oracle 关系型数据库 Java
实时计算 Flink版操作报错合集之遇到了关于MySqIValidator类缺失的错误,是什么原因
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
SQL 存储 资源调度
实时计算 Flink版操作报错合集之启动项目时报错缺少MySqlValidator类,是什么原因
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
Java 关系型数据库 MySQL
实时计算 Flink版操作报错合集之在使用批处理模式中使用flat_aggregate函数时报错,该如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
消息中间件 NoSQL Kafka
大数据-116 - Flink DataStream Sink 原理、概念、常见Sink类型 配置与使用 附带案例1:消费Kafka写到Redis
大数据-116 - Flink DataStream Sink 原理、概念、常见Sink类型 配置与使用 附带案例1:消费Kafka写到Redis
1318 0
|
11月前
|
存储 分布式计算 数据处理
「48小时极速反馈」阿里云实时计算Flink广招天下英雄
阿里云实时计算Flink团队,全球领先的流计算引擎缔造者,支撑双11万亿级数据处理,推动Apache Flink技术发展。现招募Flink执行引擎、存储引擎、数据通道、平台管控及产品经理人才,地点覆盖北京、杭州、上海。技术深度参与开源核心,打造企业级实时计算解决方案,助力全球企业实现毫秒洞察。
907 0
「48小时极速反馈」阿里云实时计算Flink广招天下英雄
|
运维 数据处理 数据安全/隐私保护
阿里云实时计算Flink版测评报告
该测评报告详细介绍了阿里云实时计算Flink版在用户行为分析与标签画像中的应用实践,展示了其毫秒级的数据处理能力和高效的开发流程。报告还全面评测了该服务在稳定性、性能、开发运维及安全性方面的卓越表现,并对比自建Flink集群的优势。最后,报告评估了其成本效益,强调了其灵活扩展性和高投资回报率,适合各类实时数据处理需求。

相关产品

  • 实时计算 Flink版