第4章
Bug成精那天,我正躲在工位底下拍片
就扣款,不夠就拋異常。
"那問題出在哪?"
"在特定的、完全不可復現的情況下,這段代**把用戶余額變成負數。"
"怎么可能?"
"我也想知道怎么可能!"明神猛敲回車,"你看:用戶余額100元,訂單99.99元。按邏輯扣完剩0.01元,對吧?"
"對啊。"
"但是你看這里——余額變成了-8848.86元。"
我盯著那個數字:"珠穆朗瑪峰。精確到小數點后兩位。"
"我知道。"
"你是不是在哪寫死了這個常量——"
"我全文搜索了八百遍!"明神快崩潰了,"整個項目里沒有任何地方出現過8848!這個*ug是自己從服務器里長出來的!"
叫老周來看看。老周是我們組的鎮組之寶,十年開發經驗,保溫杯里泡著枸杞紅棗黨參,活像個移動中藥鋪。
明神按下運行鍵。就在老周彎下腰,目光落在屏幕上的那一刻——
測試通過了。綠色的"PASS"。100-99.99=0.01。那個-8848.86,就像從來沒有存在過一樣。
老周直起身,拍拍明神肩膀:"看來這個*ug比較社恐。"
我脫口而出:"不,它只是需要一個觀眾。"
明神忽然猛地坐直:"我懂了。這個*ug只在我一個人復現的時候出現。我叫了你們,它藏起來了。所以……阿凱,等下你假裝下班,躲在桌子底下別出聲。我一個人復現,你用手機偷偷錄屏。"
"你認真的?"
"非常認真。"
老周放下保溫杯:"你這不是在修*ug,你是在給*ug做心理治療。"
那天晚上八點四十分,我蜷在工位桌底,膝蓋頂著主機箱,手機攝像頭對著明神的屏幕。辦公室里只剩他一個人。他按下運行鍵。
兩秒后,屏幕上彈出了那個數字:-8848.86。
明神沒有尖叫。他對著空氣輕輕說了一句:"抓到你了。"
后來他花了三個小時,從隱藏日志里追蹤到了真正的*ug源頭——一個數據庫觸發器在極端并發下使用了錯誤的時間戳。跟量子力學沒有任何關系。
但他把那段隱藏日志的文件夾
"那問題出在哪?"
"在特定的、完全不可復現的情況下,這段代**把用戶余額變成負數。"
"怎么可能?"
"我也想知道怎么可能!"明神猛敲回車,"你看:用戶余額100元,訂單99.99元。按邏輯扣完剩0.01元,對吧?"
"對啊。"
"但是你看這里——余額變成了-8848.86元。"
我盯著那個數字:"珠穆朗瑪峰。精確到小數點后兩位。"
"我知道。"
"你是不是在哪寫死了這個常量——"
"我全文搜索了八百遍!"明神快崩潰了,"整個項目里沒有任何地方出現過8848!這個*ug是自己從服務器里長出來的!"
叫老周來看看。老周是我們組的鎮組之寶,十年開發經驗,保溫杯里泡著枸杞紅棗黨參,活像個移動中藥鋪。
明神按下運行鍵。就在老周彎下腰,目光落在屏幕上的那一刻——
測試通過了。綠色的"PASS"。100-99.99=0.01。那個-8848.86,就像從來沒有存在過一樣。
老周直起身,拍拍明神肩膀:"看來這個*ug比較社恐。"
我脫口而出:"不,它只是需要一個觀眾。"
明神忽然猛地坐直:"我懂了。這個*ug只在我一個人復現的時候出現。我叫了你們,它藏起來了。所以……阿凱,等下你假裝下班,躲在桌子底下別出聲。我一個人復現,你用手機偷偷錄屏。"
"你認真的?"
"非常認真。"
老周放下保溫杯:"你這不是在修*ug,你是在給*ug做心理治療。"
那天晚上八點四十分,我蜷在工位桌底,膝蓋頂著主機箱,手機攝像頭對著明神的屏幕。辦公室里只剩他一個人。他按下運行鍵。
兩秒后,屏幕上彈出了那個數字:-8848.86。
明神沒有尖叫。他對著空氣輕輕說了一句:"抓到你了。"
后來他花了三個小時,從隱藏日志里追蹤到了真正的*ug源頭——一個數據庫觸發器在極端并發下使用了錯誤的時間戳。跟量子力學沒有任何關系。
但他把那段隱藏日志的文件夾