首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

JSON金额解析BUG的解决过程

【原创申明:文章为原创,欢迎非盈利性转载,但转载必须注明来源】 这是在我们开发的一个支付系统中暴露的一个BUG,问题本身比较简单,有意思的是解决问题的过程。将过程分享出来,希望能够对大家有所帮助。...二、分析并定位问题 1.数据流转过程 下图是一个简略的支付、记录流水的过程。 ?...2.账户记账的处理过程 这是一个简略的处理过程,支付系统生成json并传输到账户系统,解析后保存到数据库。 image.png 经过查看各个环节的日志,发现问题出在解析环节。...下图是一个简单的调用过程。 image.png 最终出错的地方是在解析 Float !!...要从这个思路上去解决问题,需要解决两个问题: 1、能不能修改源码,解决BUG? 2、怎么让修改后的类,生效?

1.1K50

Bug,项目过程中的重要数据

作者|孙敏 为什么要做Bug分析? Bug是项目过程中的一个有价值的虫子,它不只是给开发的,而是开给整个项目组的。 通过Bug我们能获得什么?...积累测试方法,增强QA的测试能力,提升产品质量 发现项目过程中的问题,推动优化解决问题;以及可以用来侧面验证流程优化是否有效 提高开发的编码能力,做到Bug预防 项目过程中不可能没Bug,但是我们要利用已有...Bug减少未来Bug数,提高产品质量。...当前版本不解决,下个版本再解决 兼容性 第三方依赖:非组内代码调用 实现与文档不符:功能实现与文档不一致(漏需求等) 技术方案设计不足:代码设计有问题 其中历史遗留,需求/UI设计缺陷,环境配置就是在项目过程中衍生出的解决方案...RD解决Bug曲线27日解决的Bug较少,理论集测当天后需要Bug清0,需要看一下是什么原因没有Bug清0? 2、针对解决方案进行分析 Bug规范的部分讲了,每个解决方案都对应一个意义。

1.2K11

Redis 源码 bug 深入定位过程分享

在进一步分析了Redis服务端日志和运行数据后,我们大致得出了问题产生的原因,并通过分析源码确认了bug的存在。以下详细描述此次问题的产生及定位过程。...: 在离线作业运行过程中,随着list中数据量增加,Redis内存占用逐渐增加; 当系统剩余内存不足以fork子进程时,AOF重写子进程启动失败,此时错误log为“Can't rewrite append...在rewriteAppendOnlyFileBackground方法中我们注意到如果fork失败,过程就直接退出了。...看来下一版本Redis才会修复此问题,真是一只长寿的bug。...Tips:这只长寿的bug在 3.2.9 版本已经修复了( 。→‿←。) 其实该问题发生概率不大,如果机器内存相对数据量足够大,则无需理会。

6.5K31

一个Bug的修复过程回顾

问题的定位过程 于是只能去日志信息里找要找,找到对应的错误信息“Out of range float values are not JSON compliant”。...看日志,这个错误是在Fastapi返回响应数据的时候报的错,Fastapi这点做得不够好,如果是在响应过程抛出的异常可能不能被异常处理程序捕获到。...在这个过程,还遇到一个很特别的点: # 假设var是一个变量 # 下面这个表达式居然有可能为True值 var != var 即一个变量不等于它自己!...在长链条的数据处理过程中,python的弱类型很容易埋下一个一个的大坑。...因此,对于业务逻辑比较复杂的系统,最好使用强类型语言进行开发(如golang),如果只能用python,那在系统规划上应该投入多一些时间和精力,在数据在传输过程中,多对数据结构进行测试,保障每个步骤的数据结构都是清晰的

1.4K40

一个ext4的Bug分析过程

某客户反映他们的实例有一段时间内慢查询突增,监控页面上也显示那段时间内监控数据也没有上报,经查看系统日志,以下内容引起了我们的注意: Mar 15 23:06:30 TENCENT64 kernel: BUG...insert_kthread_work+0x40/0x40 soft lockup(软死锁)通常被定义一种内核bug,也即让kernel在内核态循环超过20s,不给其他进程任何运行机会。...2.2 ext4块查找过程 回到第一节中的内核调用栈上来,关于jdb2日志的提交过程本文不做展开,但ext4_get_block函数作为VFS层get_block函数的适配实现,为我们提供物理块查找的功能...至此,块查找的整个过程分析完毕。...总结 本文通过对Linux ext4文件系统的一个bug进行分析,探讨了ext4的延迟分配机制、块查找过程及extent cache收缩机制,并简要介绍了社区对这一个bug的修复方案。

4K20
领券