程序员的噩梦:碰到这样的bug你怕不怕

移动开发
这个bug只发生在生产环境中,本地无法重现。这个bug发生的频次很低,但是还没有低到可以忽略。这个bug的产生和多线程里的资源竞争有关(race condition)。不知道这个bug是怎么触发的。这代码不是你写的,但是现在这个bug要你修复。而写这块代码的人已经离职了。

[[156934]]

bug是这样的:

这个bug只发生在生产环境中,本地无法重现。

这个bug发生的频次很低,但是还没有低到可以忽略。

这个bug的产生和多线程里的资源竞争有关(race condition)。

不知道这个bug是怎么触发的。

这代码不是你写的,但是现在这个bug要你修复。而写这块代码的人已经离职了。

因为一些库里(library)的问题导致了这个bug,这个库99.9%的时候都很稳定,然而调试到这些库的时候你无法更进一步调试了。

过去几年里很多人都尝试解决它,但是没有人成功。

这个bug是个逻辑上的错误,只有在系统运行了一段时间后才会发生。

调试这个bug需要某一领域的专业知识,然而你什么都不懂。

老板:我不管,明天就要改完。

这个bug不能推脱,搞不定就要走人。

来想象这样一个场景:通过光波脉冲信号(light pulse signals)调试一个从地球发射出的火星探测器。这个bug只有在所有行星连成一条线时,并且只在火星的大气层里才会发生。产生问题的代码非常难读懂,因为用了一个十几年前退休的NASA科学家写的库(这些库都没有源码)。你必须要解决这个bug,因为行星马上就要连成一条线了(bug下一次出现要再等十年),搞不定的话这个投资上千万刀的项目就要挂。

我现在就问你碰到这样的bug怕不怕?

大声的回答我!

责任编辑:倪明 来源: 简书
相关推荐

2014-12-08 09:44:01

程序员

2014-12-08 10:08:33

程序员

2015-12-07 10:09:40

程序员噩梦

2013-11-08 09:22:17

程序员Bug调试

2015-03-25 09:55:34

程序员程序员修补BUG真正原因

2010-03-22 17:22:33

无线网络辐射

2018-05-02 09:38:02

程序员代码互联网

2020-02-20 10:45:57

代码JS开发

2015-11-04 11:38:40

bug程序员

2010-11-22 13:28:55

2015-06-29 09:44:55

2014-02-18 13:45:39

bug程序员

2015-12-14 17:26:42

程序员生活

2012-04-26 17:12:36

程序员梦想

2018-06-25 13:37:13

2009-05-21 15:58:12

程序员工作经验职场

2022-10-25 10:40:15

1024

2015-08-24 10:07:13

程序员bug

2016-02-26 15:25:45

程序员Bug反应

2019-08-26 08:58:41

程序员Bug开发
点赞
收藏

51CTO技术栈公众号