NutzCN Logo
问答 java程序重启后数据莫名其妙错误,可能更shutdownhook有关
发布于 290天前 作者 wx_1qpihr8rfnhkm4btf56b 261 次浏览 复制 上一个帖子 下一个帖子
标签:

最近项目出现了一个神奇的bug:数据莫名其妙的改变了。先是发现某个类下的集合数据出现莫名其妙的错误,某个字段出现错误;然后在所有改变数据的api处打了日志。在日志中发现错误复现了,然而没有任何行为去改变这个值,出现错误的api也没有去改变这个值。
打日志的方法是,根据类名出现的地方,去挨个查看api的调用,日志应该没有遗漏。根据数据错误的规律,应该是在程序重启后出现的问题。脚本写的有点问题,kill进程后,等待20秒,然后就可以重启了。20秒是shutdownhook用来完成数据存储的时间。
目前怀疑是程序没有完全关闭,就重启导致的,目前还没有验证,也没有理论知识去做出这样的解释。大家遇到过类似的问题吗?

3 回复

前一个进程有没有关掉, 看进程在不在就行啦

@wendal 这个没有去验证。shutdownhook执行的时候进程号已经删除了吗?

当然没有,代码还在跑,进程必须还在呀

添加回复
请先登陆
回到顶部