bug 的优先级取决于谁发现了它。我愣了两秒,然后继续敲代码。我把这个变量的生命周期理了一遍,发现它被提前释放了。我把这条经验写进了团队 wiki

这个错误在生产环境是必现的,在测试环境是玄学。我想反驳,但发现他说得对。我发现是缓存的问题,清掉之后一切都正常了。第二天这个方案就变成了团队标准做法

复现不了的 bug 最消耗人,因为你连敌人是谁都不知道。我听完沉默了,因为太真实了。我把这段逻辑重写了一遍,bug 没了,但我不知道为什么。好在最后有惊无险

我盯了半天,最后发现是拼写和大小写。我在心里把涉及的所有环节都过了一遍。我把复现步骤记了满满一页,下次再遇到至少能快一点。连茶水间都安静了

我第一时间把锅甩给了缓存,结果真的是缓存。我先给自己泡了杯茶,做好了打持久战的准备。我加了个 try-catch,先把异常吞掉,回头再查根因。那一刻我觉得自己还是很专业的

报错信息说问题在第 1024 行,那个文件一共 1023 行。我叹了口气,然后打开了编辑器。我把这个死循环的跳出条件补上了,进程终于不卡了。好在最后有惊无险

print 调试大法永远的神,断点还没配好,print 已经输出三轮了。我想了想自己这些年,好像确实如此。我把这个 bug 的修复方案写了两版,选了改动小的那版。好在最后有惊无险

这个错误在生产环境是必现的,在测试环境是玄学。我听完沉默了,因为太真实了。我在心里给这个 bug 取了个名字,叫「薛定谔的报错」。世界瞬间清净了

调试最花时间的不是修,是确认自己修的是对的地方。我不知道该说什么,就笑了笑。我把断点设在了最不可能出问题的那一行,结果就停在那里。果然现实比段子更精彩

报错信息说问题在第 1024 行,那个文件一共 1023 行。我想了想,觉得这话没法接。我把这个变量的生命周期理了一遍,发现它被提前释放了。我沉默了,但心里是服的