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

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: 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轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
1月前
|
SQL Shell API
实时计算 Flink版操作报错合集之任务提交后出现 "cannot run program "/bin/bash": error=1, 不允许操作" ,是什么原因
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
实时计算 Flink版操作报错合集之任务提交后出现 "cannot run program "/bin/bash": error=1, 不允许操作" ,是什么原因
|
1月前
|
资源调度 监控 关系型数据库
实时计算 Flink版操作报错合集之处理大量Join时报错空指针异常,是什么原因
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
实时计算 Flink版操作报错合集之处理大量Join时报错空指针异常,是什么原因
|
1月前
|
SQL Java Apache
实时计算 Flink版操作报错合集之使用parquet时,怎么解决报错:无法访问到java.uti.Arrays$ArrayList类的私有字段
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
1月前
|
Oracle 关系型数据库 Java
实时计算 Flink版操作报错合集之遇到了关于MySqIValidator类缺失的错误,是什么原因
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
8天前
|
SQL JavaScript 数据库
sqlite在Windows环境下安装、使用、node.js连接
sqlite在Windows环境下安装、使用、node.js连接
|
4天前
|
JavaScript Linux 开发者
一个用于管理多个 Node.js 版本的安装和切换开源工具
【9月更文挑战第14天】nvm(Node Version Manager)是一个开源工具,用于便捷地管理多个 Node.js 版本。其特点包括:版本安装便捷,支持 LTS 和最新版本;版本切换简单,不影响开发流程;多平台支持,包括 Windows、macOS 和 Linux;社区活跃,持续更新。通过 nvm,开发者可以轻松安装、切换和管理不同项目的 Node.js 版本,提高开发效率。
|
1月前
|
缓存 JavaScript 安全
2022年最新最详细的安装Node.js以及cnpm(详细图解过程、绝对成功)
这篇文章提供了2022年最新最详细的Node.js和cnpm安装教程,包括步骤图解、全局配置路径、cnpm安装命令、nrm的安装与使用,以及如何管理npm源和测试速度。
2022年最新最详细的安装Node.js以及cnpm(详细图解过程、绝对成功)
|
23天前
|
JavaScript NoSQL 前端开发
|
1月前
|
JavaScript Linux
2022年超详细在CentOS 7上安装Node.js方法(源码安装)
这篇文章介绍了在CentOS 7系统上通过源码安装Node.js的详细步骤,包括从官网下载Node.js源码包、将安装包上传至虚拟机、解压安装包、删除压缩文件、编译安装Node.js、检查Node.js和npm版本,以及切换npm源到淘宝镜像以加速下载。此外,还提供了一个获取Linux下Node.js离线安装包的微信公众号搜索方式。
|
1月前
|
JavaScript
成功解决node、node-sass和sass-loader版本冲突问题、不需要降低node版本。如何在vue项目中安装node-sass,以及安装node-sass可能遇到的版本冲突问题
这篇文章介绍了在Vue项目中安装node-sass和sass-loader时遇到的版本冲突问题,并提供了解决这些问题的方法,包括在不降低node版本的情况下成功安装node-sass。
成功解决node、node-sass和sass-loader版本冲突问题、不需要降低node版本。如何在vue项目中安装node-sass,以及安装node-sass可能遇到的版本冲突问题

相关产品

  • 实时计算 Flink版