加了二十行 console.log 之后,Bug 消失了,删除它们,Bug 又回来了。我重新看了一遍手上的计划,把风险项标了出来。我把这个 bug 的修复方案写了两版,选了改动小的那版。真香定律准时生效
😂 IT段子
程序员日常、代码趣事、技术梗图,让你在学习之余轻松一笑
问题居然复现不了了,这比复现出来更可怕。我想了想,觉得这话没法接。我把这段代码暂时回滚了,先让线上不报错,再慢慢查。好在最后有惊无险
调试最花时间的不是修,是确认自己修的是对的地方。我把这个依赖的版本锁死了,问题不再随机出现。我沉默了,但心里是服的
这个报错信息指向的位置和真正的错误隔了三层。我把它记在心里,没跟任何人说。我发现是时区问题,服务器是 UTC,我以为本地。好在最后有惊无险
这个异常被吞掉了,所以它安静地错了很久。我听完沉默了,因为太真实了。我把这个 bug 的触发条件缩小到了特定的一台机器。复盘会上我们把它列成了案例
这个报错信息指向的位置和真正的错误隔了三层。我盯着屏幕,觉得这才是我的一天。我把这个函数的入参和出参都打了,发现中间少了一层转换。复盘会上我们把它列成了案例
调试了两天的 bug,最后发现是少打了一个等号。我先确认了一遍前置条件,再动手。我在本地把这段代码跑了一千遍,一次都没复现。复盘会上我们把它列成了案例
我用了半天才明白,问题不在这台机器上。我盯着屏幕沉默了十分钟。我把变量全部打印出来对比,发现类型和我想的完全不一样。这条经验值直接拉满
这个空指针在上线前一切正常,因为那时没有空数据。我叹了口气,然后打开了编辑器。我把断点设在了最不可能出问题的那一行,结果就停在那里
我第一时间把锅甩给了缓存,结果真的是缓存。我深呼吸了一下,决定从最可疑的地方查起。我盯着那段代码看了二十分钟,最后发现是我自己三天前改的。办公室安静得能听见键盘声