项目在晚上升级上线的时候,排查日志发现时不时会有一个异常报出来,空指针我倒是很熟悉,但是下面的一大段可是没见过的;
2019-10-10 23:30:26.577 [http-nio-11007-exec-413] DEBUG - RequestController >>> updateLastDate for 865233030788013
2019-10-10 23:30:26.580 [http-nio-11007-exec-413] DEBUG - RequestController >>> uplink Exception
: null
at (:103)
at .HttpDownlinkRequest_Accessor_jny7k3.setProperty(Unknown Source)
at (:58)
at (:280)
at $(:233)
at $(:229)
at (:330)
at (:229)
at (:223)
at (:190)
at (:176)
at (:298)
at (:47)
at (:605)
at (:594)
at (:376)
at $(:85)
at $(:143)
at (:113)
at $(:494)
at $(:477)
at (:179)
at (:56)
at (:179)
at (:92)
at (:179)
at (:57)
at (:179)
at (:213)
at .$(Unknown Source)
at (:92)
at (:295)
at (:202)
at $$FastClassBySpringCGLIB$$(<generated>)
at (:204)
at $(:667)
at $$EnhancerBySpringCGLIB$$(<generated>)
at .(Unknown Source)
at (:43)
at (:498)
at (:205)
at (:133)
at (:97)
at (:827)
at (:738)
at (:85)
at (:967)
at (:901)
at (:970)
at (:872)
at (:661)
at (:846)
at (:742)
at (:231)
at (:166)
at (:52)
at (:193)
at (:166)
at (:99)
at (:107)
at (:193)
at (:166)
at (:108)
at (:107)
at (:193)
at (:166)
at (:81)
at (:107)
at (:193)
at (:166)
at (:197)
at (:107)
at (:193)
at (:166)
at (:199)
at (:96)
at (:504)
at (:140)
at (:81)
at (:87)
at (:342)
at .http11.(:803)
at (:66)
at $(:790)
at $(:1459)
at (:49)
at (:1142)
at $(:617)
at $(:61)
at (:745)
还好领导比较厉害,猜测是"HttpDownlinkRequest可能是这个类与数据库表不一致导致";反正代码我研究了半天也没看出来哪里有错,后来对比日志和数据库数据,发现出错的几个设备,数据库里的数据有一个字段是null,而实体类里面的数据类型是boolen,当查询出来的值是null,set到这个boolen类型的字段时,就出现了上面的异常;
这个字段正常应该是true或者false才对,应该是之前的旧数据,这个字段未作处理直接写成null了,手动把数据库里这样的旧数据清理掉后,这个异常就再也没有出现了,mark一下。。。
微信公众号,搜索:zhangdaopin,也可方便快捷的看到本人的博客哦,谢谢~