Flink类型导致的异常:java.lang.NullPointerException

代码提交到yarn上后,一直报这个错,但是数据好像没丢,或者丢的少, 没看出来。。
一开始分析的是业务逻辑中匹配的时候,会有一些类型不匹配的问题,但是全部排查了一遍,貌似没有,更何况下边这个异常里面并没有指出代码中的哪一行类型异常。。所以就怀疑是不是kafka中的数据进来的时候就有空字段。。
今天无意中翻了一眼官网,他说:
Scala Case Class(包括Scala元组):最多22个字段,不支持空字段
所以问题很明显,就是flink中的元组不支持空字段, 因为之前用scala的tuple的时候,是可以为空的。。所以一直没想到这。。

java.lang.NullPointerException
	at org.apache.flink.api.scala.typeutils.CaseClassSerializer.copy(CaseClassSerializer.scala:101)
	at org.apache.flink.api.scala.typeutils.CaseClassSerializer.copy(CaseClassSerializer.scala:32)
	at org.apache.flink.streaming.runtime.tasks.OperatorChain$CopyingChainingOutput.pushToOperator(OperatorChain.java:577)
	at org.apache.flink.streaming.runtime.tasks.OperatorChain$CopyingChainingOutput.collect(OperatorChain.java:554)
	at org.apache.flink.streaming.runtime.tasks.OperatorChain$CopyingChainingOutput.collect(OperatorChain.java:534)
	at org.apache.flink.streaming.api.operators.AbstractStreamOperator$CountingOutput.collect(Abstra
在dataworks上跑flink包,报错如下 RUNNING to FAILED. java.lang.ExceptionInInitializerError at com.bmsoft.stream.utils.dwsSQLConnParam$class.$init$(dwsSQLConnParam.scala:10) at com.bmsoft.stream.utils.LczxPgUtils$.<init>(LczxPgUtils.scala:6) at com.bmsoft.stream.utils.LczxPgUtils$.<clinit>(LczxPgUtils.scala) at com.bmsoft.stream.sink.simulate.CustWholeInfoSink.open(CustWholeInfoSink.scala:86) at org.apache.flink.api.common.functions.util.FunctionUtils.openFunction(FunctionUtils.java:36) at org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator.open(AbstractUdfStreamOperator.java:102) at org.apache.flink.streaming.api.operators.StreamSink.open(StreamSink.java:48) at org.apache.flink.streaming.runtime.tasks.StreamTask.openAllOperators(StreamTask.java:475) at org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:345) at org.apache.flink.runtime.taskmanager.Task.run(Task.java:736) at java.lang.Thread.run(Thread.java:834) Caused by: java.lang.NullPointerException at java.util.Hashtable.put(Hashtable.java:459) at java.util.Properties.setProperty(Properties.java:166) at com.bmsoft.stream.utils.DataBaseDriverProperties.<clinit>(DataBaseDriverProperties.java:74) ... 11 more 2025-08-15 15:18:57,270 INFO [flink-akka.actor.default-dispatcher-2] org.apache.flink.runtime.executiongraph.ExecutionGraph - Job kafkatest (9385cd5fbf444dd7a4423a0e772041b9) switched from state RUNNING to FAILING. java.lang.ExceptionInInitializerError at com.bmsoft.stream.utils.dwsSQLConnParam$class.$init$(dwsSQLConnParam.scala:10) at com.bmsoft.stream.utils.LczxPgUtils$.<init>(LczxPgUtils.scala:6) at com.bmsoft.stream.utils.LczxPgUtils$.<clinit>(LczxPgUtils.scala) at com.bmsoft.stream.sink.simulate.CustWholeInfoSink.open(CustWholeInfoSink.scala:86) at org.apache.flink.api.common.functions.util.FunctionUtils.openFunction(FunctionUtils.java:36) at org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator.open(AbstractUdfStreamOperator.java:102) at org.apache.flink.streaming.api.operators.StreamSink.open(StreamSink.java:48) at org.apache.flink.streaming.runtime.tasks.StreamTask.openAllOperators(StreamTask.java:475) at org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:345) at org.apache.flink.runtime.taskmanager.Task.run(Task.java:736) at java.lang.Thread.run(Thread.java:834) Caused by: java.lang.NullPointerException at java.util.Hashtable.put(Hashtable.java:459) at java.util.Properties.setProperty(Properties.java:166) at com.bmsoft.stream.utils.DataBaseDriverProperties.<clinit>(DataBaseDriverProperties.java:74) ... 11 more
最新发布
08-16
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值