看到一个段子:

然后就想到了一个自己遇到的最难调的 bug 是这样的:给一个刚生产出来的 arm 开发板写 bootloader ,然后每次都是刚跑一下就挂了,然后各种修改代码、仿真器监控,都解决不了,然后怀疑自己、怀疑人生、怀疑硬件,就去问了一下做板子的哥们,一句话把我喷死了: fpga 的看门狗复位了 cpu 。 大哥你手也太快了,刚生产出来的板子你就刷 fpga 了。
说说你们难调的 bug 吧。
1
Strikeactor Aug 22, 2015
调用一个网站的 API 一直是错误结果,明明照着文档来的,怎么改都没用
后来发现是用的梯子服务把第一次的请求结果缓存了 |
2
vitovan Aug 22, 2015 via Android 说个看来的,忘记出处了:
从前有个系统管理员,平时去机房登录服务器时都是站着操作。 有一次腰疼,搬了个凳子坐在了机器前面,完蛋,死活登录不进去,提示密码错误。 于是他站了起来,重新输入了一次密码,进去了。 后来他觉得奇怪,于是抽时间做了测试,发现:只要一坐下,就密码错误,站起来就好了。 这个 Bug 在他的职业生涯中持续了好几年。 直到有一天公司升级设备给他换了个键盘。 原来是老键盘上有两个键装反了,站着打字是看着键盘,坐着盲打就错了。 |
3
ybh37 Aug 22, 2015
有很多,都忘了
现在遇到一个,调试了一天也没结果 iOS 空载音频 raw data 经过 FFT 变换后的值随着时间的延长逐渐变大…… 没找到办法呢 |
4
rrfeng Aug 22, 2015 昨天我司一群人在调试 nodejs
用 PM2 启动的程序总是在 web 上一点就挂, node 直接运行的就没问题…… 研究半天无果,我去看了一眼,原来 PM2 开启了 watch ,然而程序会在当前目录写一个临时文件。于是就呵呵哒了! |
5
lianyue Aug 22, 2015 foreach ($array as $key => &$value ) {
xxxxxx.......... } .............. $value = xxxxxx; or foreach ($array2 as $key => $value ) xxxxxxxxxxx xxxxxxxxx........... 坑了我半天 |
6
knightdf Aug 22, 2015
写错单词的时候
|
7
zhengnanlee Aug 22, 2015
|
8
Dongdong36 Aug 22, 2015
mongoose...
第一次,取不到数据,因为集合名称没变复数 第二次,取不到数据,因为一个单词的复数写错了... 调试好久... |
9
Strikeactor Aug 22, 2015
又想起一个
在 Openshift 改 PHP 代码,结果总是不变 后来气得把所有代码全删了,发现竟然还是能跑 查了才知道这坑货默认把 APC 打开了。。 缓存问题真的是神坑 |
10
tb4649120073rs Aug 22, 2015
@lianyue 这个会有什么问题?
|
11
xcv58 Aug 22, 2015 via iPhone
自己实现虚拟内存,多核多进程运行时偶尔出错。
|
12
undeflife Aug 22, 2015
以前看到一个 每天 5 点以后网站就无法访问,百思不得其解,决定现场蹲守,一整天一切正常,直到下班,前台 MM 说 我下班先回去了,小 X 你走的时候记得把那个服务器给关了.
|
13
gamexg Aug 22, 2015
一个坑。
``` >>> l = (a for a in range (3 )) >>> for i in l: print i 0 1 2 >>> for i in l: print i >>> (a for a in range (3 )) <generator object <genexpr> at 0x023F7698> ``` 有一次看到别人代码里面用(a for a in range (3 )),以为生成的是 tuple 提高性能。后来就用了一次,结果发现是 generator ,只能用一次 ... |
14
jarlyyn Aug 22, 2015
<script type="text/javascrept">
xxxx </script> |
15
aheadlead Aug 23, 2015 via iPhone
大致是这样 opengl in C
int a[3]; a[0] = xxx; a[1] = xxx; a[3] = xxx; 结果导致大概那一个绘图算法,十次里面有九次是正常的,怎么查 tmd 也查不出。 后来多亏了 valgrind 发现了。 最后是终端配色的锅,数字和背景色有点像…写代码的时候手滑,按错了,嗯,应该是这样 |
16
garfieldWu Aug 23, 2015
我觉得微信的授权接口算是比较难调试的了,参数顺序都会导致授权失败。
没有文档,没有错误信息,最后 google 了好久才偶然找到原因 |
17
Smilecc Aug 23, 2015
主站是 MediaWiki ,我写的登录接口,在线上跑了三个月没问题,突然有一天跪了,主站程序也没升级,我至今也不知道问题所在。
|
18
iyaozhen Aug 23, 2015
看来缓存的锅挺多的。
@garfieldWu 微信的接口本来就是这样的呀,认证的时候需要按照 ascii 排序,更坑的是基础的那个开发者模式认证是要按 value 的 ascii 排序, weixin js sdk 里面的有个认证是按照 key 的 ascii 排序,当时极度的怀疑自己的人生了。 |
19
jianleer Aug 23, 2015 估计程序员最难测的 bug 是找不到女朋友吧
|
20
nooper Aug 23, 2015 via iPad
我会列出禁止用户注册名称,一系列。
|
21
suifeng Aug 23, 2015
我有一次因 api 缓存调试了 1 天,第二天才想到是缓存。。。
|
22
ljbha007 Aug 23, 2015
把学校上外网的电信拨号器 netkeeper 移植到路由器上的时候 需要通过 802.1x 协议接入学校内网
调了一个月 始终不通 最后发现是 BCM63XX 系列 SoC 芯片自带硬件解析 802.1x 协议的功能 但是这个功能在有线网的状态下有 BUG 导致有线网状态下 802.1x 协议提前中断 调了一个月最后追踪到 BUG 的位置 然后写给驱动作者 最后作者打了个 patch 终于给解决了 |
24
lianyue Aug 23, 2015 via iPhone
@tb4649120073rs $array 最后一个值 会被后面的 替换 因为引用
|
25
leemail Aug 23, 2015 via iPad |
29
Actrace Aug 23, 2015
我遇到的最难调的 Bug 就是产品经理的脑子抽了.
|
31
617019296 Aug 23, 2015 via Android
实习小生一枚,,表示前人写的混乱代码改 bug 很麻烦。各种类调用,,找代码都累死!!
|
32
loading Aug 23, 2015 via Android
以前不知道浏览器缓存,自己点 shift 刷新, css 调试好后打电话去说整好了,然后对方电脑点刷新样子就是不变~
最后才知道要 xx.css?_t=233 |
33
loading Aug 23, 2015 via Android
当时是 .asp 我用了 index2.asp 和 style2.css 进行暴力在线调试~
好了后,改名~ |
34
fxxkgw Aug 23, 2015
哥们你是做交换机的吧。。。
|
35
cyr1l Aug 23, 2015
找不到对象
|
36
oska874 OP |
37
loryyang Aug 23, 2015
大小写拼错,然后 vim 关闭了 case sensitive ,一个巨长的函数名,半天没查出来
|
39
popu111 Aug 23, 2015
众(重)口难调
|
40
isunmoon Aug 23, 2015
这说的就是我,,,我是他旁边的 java ,只不过当时我的昵称是 undefined ,,,我不是老张,是老王。。。
|
41
danny200309 Aug 23, 2015
always new objects, but never found "sweetheart"!
|
44
Reficul Aug 23, 2015
前段时间,学着写操作系统,然后 GDT 设置完 JMP 一直保护重启。 GDB 调试, qemu 查看寄存器各种都表示 eip 飞到了不知道哪去。三天后我把前面一行 sprintf 注释掉之后世界清静。用的 C 库里面因为 uchar 和 char 转换的关系,中间不知道咋内存泄漏了。
现在调试多进程那里,因为各种跳来跳去,进程的链表还不知道为啥老是被破坏掉。。。。纠结了两天了。 我是菜比啊 (°ཀ°) |
46
xpol Aug 24, 2015
c 语言,行注释末位多了一个 \
|