2018年8月21日,訂單搜索發佈致使訂單搜索分頁失效。該發佈有三個變動:1. 新增一個帶詳情的訂單列表接口;2. 按照訂單狀態搜索的索引分流; 3. 支持自定義的from傳參。 第三個變動只有一行代碼,更像是搭了個順風車, 但正是這行代碼,致使搜索分頁失效,整個發佈失敗,最終回滾。
併發
主要代碼BUG 以下所示:
curl
只是增長了一個 from 是否爲空的判斷。 看上去沒有問題,但是若是構造器裏初始化了 from ,再設置 page,那麼新的 page 就不會生效。
測試
爲何沒有檢測出這個BUG呢?加密
雖然我經過 curl 測試了 from 的自定義傳參沒有問題,但是正好繞過了Java構造器初始化的過程,沒有測出來。url
一個教訓是: 合併發佈也要講究節奏,不能隨便搭車。若是由於小的細節處理不當,影響了總體發佈,那真是無以言表。blog
更大的教訓是: 怠惰省去了幾分鐘的測試和迴歸時間,結果卻消耗了兩個多小時用來發布、回滾、從新發布,得不償失,還險些形成故障。正應了那句話:索引
怠惰必受罰, 勿以微小而不慎。接口