遭遇2038千年虫

公司的业务人员要测试,所以修改了测试机上的系统日期,结果,Oracle频频宕机,现象非常奇怪。

起初以为是数据库的问题,因为上面的log日志以及trc文件都不正常,尤其是一个trc文件,会以每秒1M的速度增长,当增至340M左右的时候,Oracle服务就会自动停止。

于是重新启动服务器,但在没有启用weblogic 的情况下,Oracle的日志文件不会增大,也没出现问题,所以怀疑是Weblogic的问题。

但是将系统日期改回到2009年的话,Oracle和weblogic会很好地协作,而不会产生任何问题。

因此觉得最根本的问题是修改了系统日期,业务人员将系统日期修改到了2054年。

但当时是业务的需要,所以讨论之后,觉得可以关闭Oracle的日志功能,看看是否能够避免Oracle服务的停止。

重启之后,问题依旧。

最后决定看一下日期改到什么时候的情况下才会出现问题。

先是改到2050年,重启Oracle和weblogic,问题依旧。

又改到2040年,问题依然没有解决。

又改到2030年,服务器没有出现问题。

google一下,偶尔发现了2038问题,也就是说系统日期改到2038年以后,就会造成系统的不稳定,甚至出现严重的问题。

和大家仔细分析了一下,最终确定为这个问题,并且暂时可能无法解决,因为还找不到硬件、软件都是64位的环境,只要让业务在修改日期的时候不要跨度太大。

多亏2038年的时候,我应该已经退休了,否则还真的需要为这个问题忙活一阵子呢,哈哈。

posted @ 2009-07-09 13:18  侯伯薇  阅读(504)  评论(1编辑  收藏  举报