我用了半天才明白,问题不在这台机器上。我把这个 bug 的优先级降了一级,因为它只在测试环境出现。连茶水间都安静了
😂 IT段子
程序员日常、代码趣事、技术梗图,让你在学习之余轻松一笑
调试到后面会发现,最大的敌人是自己的假设。我把这个 bug 的触发条件缩小到了特定的一台机器。我把这条经验写进了团队 wiki
我第一时间把锅甩给了缓存,结果真的是缓存。我先给自己泡了杯茶,做好了打持久战的准备。我在关键路径上打了十几个日志,一行一行对时间戳。我把这条经验写进了团队 wiki
调试到后面会发现,最大的敌人是自己的假设。我叹了口气,然后打开了编辑器。我用了二分法把出问题的版本区间缩到了两个提交。幸好之前留了备份
线上日志里出现了从未见过的堆栈,时间戳还是三个月前的。我拉了个小群,把相关同学都叫了进来。我把这个报错的堆栈从头读到尾,发现在最后一行有个提示。世界瞬间清净了
我第一时间把锅甩给了缓存,结果真的是缓存。我把手上的资料翻出来又读了两遍。我最后发现是一个大小写问题。果然现实比段子更精彩
线上日志里出现了从未见过的堆栈,时间戳还是三个月前的。我盯着屏幕沉默了十分钟。我在心里把这个 bug 的可能性列了五条,第一条就对了。幸好之前留了备份
这个错误在生产环境是必现的,在测试环境是玄学。我想反驳,但发现他说得对。我在心里把这个 bug 的可能性列了五条,第一条就对了。真香定律准时生效
我第一时间把锅甩给了缓存,结果真的是缓存。我注释掉了一半代码,bug 消失了,然后我又注释掉了另一半。真香定律准时生效
这个异常被吞掉了,所以它安静地错了很久。我在心里点了点头。我最后发现是一个大小写问题。从此我多了一条团队规约