线上一个神奇的小问题

背景:
商城招商系统中有一个风控模块,对于入驻商家采集征信报告,根据征信报告中司法信息给出对应的等级,决定是否可以入驻平台

如果征信等级不符合规则,可以走审批流。更改征信等级

征信报告每天可以强制更新一次,更新征信报告的同时会同步计算出征信等级。

这里可以隐约觉察到这里业务逻辑的漏洞

问题爆发:
业务反馈,某家企业征信等级是红色,走了审批之后 仍然是红色。

无法入住平台。

查看日志:
发现:sql 语句正常执行,返回结果正常。

这。。。
难道mysql 配置了自动事务,不合逻辑啊

为了确认mysql 服务本身没问题(mysql 大概率不会有问题,回想一下多次一举),找DBA 看了binlog
发现binlog 中有对应语句,再查binlog 发现
(根据binlog 确认问题原因比业务日志快很多,特别是业务日志还是原始的Linux log)

数据被再次更新了,导致业务系统看起来没有更新,
产品坑。

想这种神奇的问题,大概率是数据被再次修改了,成熟的mysql \中间件大概率不会有什么问题。

对于线上的疑难问题,一定要结合业务。

猜你喜欢

转载自blog.csdn.net/keep_learn/article/details/111216581