当前位置:首页 > 默认分类 > 正文内容

【疑难杂症】记录一次定位并修复涉及支付、转账的系统性BUG

virtualman2年前 (2023-12-02)默认分类2412

在某个线上的项目上,突然收到用户反馈,存在转账连续转两次的情况。

一开始接到反款后并没有太在意,因为这个项目已经在线上稳定运行了近两年的时间,期间也并没有对订单或者支付系统进行修改。支付的接口也没有发生变化,因此,第一次反馈认为是一次用户的误报。但是,今天下午,有个开发者用户给我再一次反馈了这个BUG,我意识到可能确实存在BUG了。


我先从微信支付(服务商平台)上导出了上一个月的全部转账记录,发现有些连续数据存在时间完全相同(连毫秒都相同)、金额完全相同、备注信息也完全相同的记录,如下图所示,共计30余条。

image.png

紧接着,从数据库中把11月份数据库中的订单、转账记录也导出了出来,理论上,一条订单对应一条转账记录。同时也对应一条微信支付的记录,但在对三份数据进行对比时,发现出现了1对2对2或1对1对2的情况。



相关文章

【JAVA】如何在宝塔面板中运行java springboot项目?手把手教程

【JAVA】如何在宝塔面板中运行java springboot项目?手把手教程

1、安装Tomcat选择网站之后,点击Tomcat管理,直接选择版本安装即可。可以选择安装7、8、9这三个版本都可以。2、将JAVA项目打包在IDEA中,右击项目,选择构建package,等待打包完成后,会在target目录下生成一个.jar的文件3、将tar文件上传到宝塔中。并点击添加JAVA项目...

大佬推荐用的两个git指令:git rebase 和 git commit --amend

git rebase git rebase 命令用于将本地的提交重新应用到另一个基础分支上。它可以帮助你保持线性的项目历史记录,避免大量的合并提交(merge commits)。当你从一个分支拉取最新的更改并希望将你的工作基于这些更改之上时,可以使用 git rebase。 使用场景: 当...

常见License代码开源要求

  常见许可证类型 典型软件 触发代码开源义务前提要求 开源要求和范围 BSD类 如:Apache/BSD/MIT等 Tomcat;OpenSSL 无 无 MPL类 如:MPL/EPL等 FirFox,Eclips...

解决!!!关于微信小程序中无法正常显示uview-plus的up-tabs组件样式的问题

解决!!!关于微信小程序中无法正常显示uview-plus的up-tabs组件样式的问题

一.问题背景uview-plus3.0是基于uView2.x修改的vue3版本,提供了很多好用的移动端组件。点击访问最近在使用uview-plus的tabs标签组件时,需要对标签的背景颜色等样式进行自定义,查看官方文档发现提供了参数activeStyle、inactiveStyle、itemStyl...

【随笔】关于开发一个既能日常记账,又能拥有资产管理功能的APP的Idea

随便写了,想到哪里写哪里。最近一直在市面找一款记账APP,但是感觉都不满足我的需求。我的想法是,在普通账本程序的基础上,再加上多人管理。资产管理。资产管理一定要把价格接口对接好。我举个例子,比如有虚拟货币资产ETH 1个,那么就应该在统计的时候,按实时市值进行统计。又或者按照当天的市值统计。关于资产...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。