nifi报错问题记录

博客内容涉及Nifi在处理数据库同步时遇到的问题及解决方法。首先,Nifi页面出现错误,原因是缺少WAL(postgreSQL)日志文件。解决方法是通过SQL命令删除事务槽并重新同步。其次,另一个页面报错,解决方案是在DatabaseCdc组件中添加参数database.history.skip.unparseable.ddl=true来避免解析错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.nifi页面报错提示如下:

查看日志后发现缺少WAL(pg数据库)日志文件:

处理方案:

删除事务槽重新同步:

select pg_drop_replication_slot('事务槽名字') ;

select * from pg_replication_slots   --获取需要的事务槽

结果发现nifi正常运行;

2、页面报错如下:

解决办法:

DatabaseCdc 0.0.1-SNAPSHOT组件添加参数如下:

database.history.skip.unparseable.ddl=true;

 

Nifi插入数据到mysql中报错2025-03-04 13:54:58,620 ERROR [Timer-Driven Process Thread-9] o.a.n.p.standard.PutDatabaseRecord PutDatabaseRecord[id=5f22e3ee-0195-1000-de57-028d5c69d022] Failed to put Records to database for StandardFlowFileRecord[uuid=6e5d7433-3a31-4f27-a695-f0e20ae72137,claim=StandardContentClaim [resourceClaim=StandardResourceClaim[id=1741050733753-1, container=default, section=1], offset=650, length=65],offset=0,name=6e5d7433-3a31-4f27-a695-f0e20ae72137,size=65]. Routing to failure. java.sql.SQLDataException: None of the fields in the record map to the columns defined by the trq_ssql table Normalized Columns: ID,TDATE,SALESGAS,CREATETIME,UPDATETIME at org.apache.nifi.processors.standard.PutDatabaseRecord.generateInsert(PutDatabaseRecord.java:1102) at org.apache.nifi.processors.standard.PutDatabaseRecord.executeDML(PutDatabaseRecord.java:666) at org.apache.nifi.processors.standard.PutDatabaseRecord.putToDatabase(PutDatabaseRecord.java:998) at org.apache.nifi.processors.standard.PutDatabaseRecord.onTrigger(PutDatabaseRecord.java:492) at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27) at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1361) at org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:247) at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:102) at org.apache.nifi.engine.FlowEngine$2.run(FlowEngine.java:110) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.
最新发布
03-08
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值