在系统直接的调用中,除了和内部系统打交道,有时候还要和第三方系统打交道,而系统与系统之间可能出现的情况都要心里有数,才不至于出现太多问题。
前段时间发现线上有很多等待的数据,而这些等待的数据都没有交易流水号,(原本以为是底层没有返回交易流水号,但是底层修复了之后,发现线上还有等待的数据)
经过最终排查,发现问题代码如下:
image
错误原因
直接拿枚举类型和数值整数类型进行比较了,导致结果永远都是false,不会执行内部的代码,然后线上都是等待的数据。
成功的时候都会getIndex用数字比较的。
image
最后
bug都是在不起眼的地方出现的。起码这个bug我一眼没有发现,但是却导致了不少问题数据...
网友评论