背景

2018年8月21日,订单搜索发布导致订单搜索分页失效。该发布有三个变更:1. 新增一个带详情的订单列表接口;2. 按照订单状态搜索的索引分流; 3. 支持自定义的from传参。 第三个变更只有一行代码,更像是搭了个顺风车, 但正是这行代码,导致搜索分页失效,整个发布失败,最终回滚。

BUG分析

主要代码BUG 如下所示:

只是增加了一个 from 是否为空的判断。 看上去没有问题,可是如果构造器里初始化了 from ,再设置 page,那么新的 page 就不会生效。

反思

为什么没有检测出这个BUG呢?

虽然我通过 curl 测试了 from 的自定义传参没有问题,可是正好绕过了Java构造器初始化的过程,没有测出来。

  1. 这个单测没加;虽然我几次想加,可是不知有种神秘的力量阻止了我;可能嫌变更太微小。
  2. 没有上预发去回归下分页能力。当时确实有点怠惰。
  3. 测试带详情的列表接口和状态分流索引耗费我更大的精力,对这个重视不足。

一个教训是: 合并发布也要讲究节奏,不能随便搭车。如果因为小的细节处理不当,影响了整体发布,那真是无以言表。

更大的教训是: 怠惰省去了几分钟的测试和回归时间,结果却消耗了两个多小时用来发布、回滚、重新发布,得不偿失,还险些造成故障。正应了那句话:

怠惰必受罚, 勿以微小而不慎。

避免

  1. 增加密集接口测试用例(主动检测);
  2. 增强预发环境的订单搜索对比引擎检查(被动检测);
  3. 合并发布要慎重,要有节奏和计划,不能随意搭车,尤其是项目发布;
  4. 任何微小改动,都必须严格单测和接口测试,预发回归,不可轻忽怠惰。

转载于:https://www.cnblogs.com/lovesqcc/p/9537542.html

订单搜索分页失效的教训:怠惰必受惩罚相关推荐

  1. ExtJs 备忘录(6)—— GirdPanl表格(二) [ 搜索分页 ]

    前言 近些天对于厚积薄发有深刻的理解,尤其是月末那两天,很想再写两篇文章,保持每周一篇--每月至少四篇以上的文章.写文章分两种情况:一种情况是已经积累了许多经验,写起来轻松且得心应手,内容和系列文章容 ...

  2. SharePoint 搜索功能失效

    今天继续跟大家分享一个 SharePoint的故障问题,是关于 SharePoint 搜索功能失效的一个问题. 有一天,我们突然发现,SharePoint 2016的搜索功能无法使用了,如下图 然后在 ...

  3. SAP UI 搜索分页技术

    搜索分页技术往往和另一个术语Lazy Loading(懒加载)联系起来.今天由Jerry首先介绍S/4HANA,CRM Fiori和S4CRM应用里的UI搜索分页的实现原理.后半部分由SAP成都研究院 ...

  4. S/4HANA和CRM Fiori应用的搜索分页实现

    在我的博客Paging Implementation in S/4HANA for Customer Management 我介绍了S/4HANA for Customer Management里采用 ...

  5. jquery插件dataTables(dataTables在显示表格的时候,果然是个好东西,支持排序/搜索/分页/...)

    jquery插件dataTables dataTables在显示表格的时候,支持排序/搜索/分页/... 官网:http://www.datatables.net/ demo: [javascript ...

  6. windows win7电脑搜索功能失效怎么修复

    win7系统是一款在不同环境中也可以稳定运行的优秀系统.但最近很多的小伙伴们都反应自己的win7搜索没反应了!今天小编为大家带来的就是win7电脑搜索功能失效的修复方法一起来看看吧. win7电脑搜索 ...

  7. win7搜索功能失效/win7搜索功能不能使用

    前几天更新了下系统,是用360更新的(也可能是中毒了)今天突然发现win7的开始菜单中的搜索功能失效了,我的电脑里面的搜索功能也失效了,同时附加的现象还有开始菜单中的控制面板点不开,原因到现在还没找到 ...

  8. layui 数据表格的搜索分页功能的实现

    最近在使用layui+larave做项目,需要使用到table的分页+搜索的功能,一开始没有什么思路,从网上找了几个,用在自己这里并不正确,不知是自己有哪里写错了,还是这几个是不正确,下面是自己亲自试 ...

  9. windows10无法搜索计算机,win10搜索功能失效用不了如何解决|win10搜索功能搜不了文件的解决方法...

    win10正式版系统电脑搜索功能便于查找文件,精准高效,毕竟在茫茫系统中找寻所需文件并不是一件容易的事情.有时候运气不好,遇到win10电脑搜索功能失效,无法使用的情况怎么办?们要如何修复它?其实要解 ...

最新文章

  1. 将sqlite查询结果导入到文本文件
  2. Rose Study
  3. 未来区块链技术将赋能多个领域促进全球经济发展
  4. centos ntfs-3g 安装和使用
  5. ABCpdf.NET 的简易使用指南
  6. mysql数据库连接池_MySql数据库连接池
  7. maven坐标Dependencies和Exclusions详解
  8. SpringBoot项目从Git拉取代码并完成编译打包启动的sh自动脚本
  9. hihocoder216周:贪心或二分
  10. python 报错 wxPyDeprecationWarning: Using deprecated class PySimpleApp.
  11. 【R语言教程】不一样的零基础教程,数据分析到论文写作一站式完成
  12. 写给非网工的CCNA教程(6)VLAN和802.1q协议
  13. 详细介绍如何从零开始制作51单片机控制的智能小车(一)———让小车动起来
  14. (最详细)红米手机4A的usb调试模式在哪里打开的教程
  15. java英文翻译_Java实现英文文本单词翻译器功能的简单实例
  16. mysql实验一:图书管理系统之建库建表
  17. iOS 自定义播放器
  18. MongoDB4.4版本源码部署分片集群
  19. Android开发指南
  20. 删除控制面板里面的java

热门文章

  1. 一张纸还能上天能救命?理工男宁愿放弃NASA百万年薪,也要回家折纸?!
  2. 天敏T2四核增强版ROOT方法
  3. 智能家居+云端服务器,“云端”上的智能家居 全面服务生活
  4. 音视频开发总结之一理论基础
  5. navicat64位和ql\sql64位连接oracle11g, 不安装oracle客户端,缺少oci.dll
  6. 全数字锁相环的基本原理
  7. 微软计算机电源怎么接,这个长得像电源插头的东西,真的是微软最新研发的迷你电脑?!...
  8. cd28v2虚拟服务器,科技知识:华为荣耀CD28v2路由器初始密码
  9. 【Pygame小游戏】神还原【欢乐无穷的双人坦克大战】小程序游戏,上手开玩~(附完整源码)
  10. Python爬虫入门——爬取贴吧图片