事故报告(2019/09/03)

时间

2019/09/03 06:00

事故描述

  • 部分老app玩家无法登陆

  • 部分业务无法使用

事故原因

早上升级了版本,其实就改动了两处地方,评估应该是没有问题的。 所以出现问题时都觉得不可以思议。

  • 第一处

    登陆时多返回了一个其他消息号的消息,在测试和预发环境中验证都没有问题,而且也review过当前客户端代码,客户端对于不识别的消息号是会做丢弃处理(这个也是业界默认做法)。

    结果在更老的app版本居然不是这么设计,如果识别到无法识别的消息号,app直接拒绝所有的消息(多么反人类的设计)

  • 第二处

    比如有两个逻辑处理的地方, 原来代码是 a 的地方多加了一次,b的地方多减了一次,结果在处理某业务时,刚好 a+b,负负得正,业务正常。(开发b模块的人,难道不想想为什么要多减一次吗?)

    我在修复另一个代码逻辑时,发现a的逻辑有严重错误,导致了其他业务无法使用,于是就修复了 a 的多加一次bug,结果就是 导致执行了b的某业务 出现了异常。

    处理方式

    两个问题都比较懵。先在线上进行回滚,然后实验室进行修复。

    总结

    没什么好说的,自己还是偷懒了, 测试不够全面。