找不好重现的bug的一个小技巧————守株待兔
2014-10-30 10:01
211 查看
最近碰到一个问题就是数据库中偶尔出现一条没有id的数据,可恨的是怎么也找不到重现这个问题的原因,只好换种方式来找了,那么就是我标题所说的守株待兔方法。
因为我发现出现bug的数据库里面的数据有个字段为msg_contend的内容有个共性就是以“.png.down”结尾,并且这个内容来源的功能模块也能确定为FileTransServer。另外可以知道保存数据到数据库的方法只有一个save_a_message_item(),那么我就在这个门口设置个过滤器 “#ifdef _DEBUG... #endif // _DEBUG”,如果保存数据到数据库的时候内容包含“.png.down”,那么我就断点在这里,这样根据堆栈信息就可以轻易知道问题所在了。
对于找不到重新bug的问题,这个方法不错吧。
因为我发现出现bug的数据库里面的数据有个字段为msg_contend的内容有个共性就是以“.png.down”结尾,并且这个内容来源的功能模块也能确定为FileTransServer。另外可以知道保存数据到数据库的方法只有一个save_a_message_item(),那么我就在这个门口设置个过滤器 “#ifdef _DEBUG... #endif // _DEBUG”,如果保存数据到数据库的时候内容包含“.png.down”,那么我就断点在这里,这样根据堆栈信息就可以轻易知道问题所在了。
对于找不到重新bug的问题,这个方法不错吧。
相关文章推荐
- 找了2周的一个bug,鬼使神差的重现了这个bug
- glassfish 一个bug重现
- C#析构器的一个Bug
- 一个JBuilder小技巧
- 关于LB论坛的一个BUG的探讨
- OracleParameter 的一个bug
- .Text Blog .95中一个Unicode的bug
- .Text 的又一个 Bug
- Windows Notepad写字板的一个Bug
- 遇到一个由于事务控制不当造成错误的Bug
- 发现这个Blog的一个Bug
- Visual C++6.0一个小BUG的解决方法
- Delphi中MediaPlayer控件的一个Bug即修复
- 似乎是一个.Text或者是skin的bug
- 发现一个Windows的弱智bug, 微软可能因为这个要出补丁
- 用next_permutation()生成r-组合数,兼发现VC7的一个bug
- 一个SQL查询的小技巧(WHERE column IN (***))
- 一个用到Boost中time_duration类而产生的bug
- Windows 2003里的一个小bug?
- 写给公司的一个Bug需求管理系统,公司一直使用良好