這個計算機係研三男生總把工牌掛反,此刻緊張得抱著懷裡筆記本電腦的樣子像是抱著顆炸彈。
“徐、徐工...”小林的聲音帶著變聲期尾聲的顫抖,“昨天您讓我做的索引重建方案...”
8:15第三會議室
晨會的投影儀發出輕微的電流聲,二十餘名工程師的筆記本屏幕像星群般亮起。
徐璐剛要開口,突然發現大屏上的《華東區性能優化方案》文檔裡,一張B樹索引示意圖明顯錯位——聚集索引的葉子節點竟指向了非聚集索引。
“這是誰做的拓撲圖?”負責ERP係統的老張皺眉敲了敲桌子,“物理結構都畫反了,照著執行要出大事故。”
小林“騰”地一下站起來,後腰撞翻椅子的聲響在會議室裡炸開。
劇烈的聲響讓年輕人更緊張了,他臉色煞白,手肘又碰倒了劉洋的咖啡杯,褐色的液體在會議桌上蜿蜒成河。
他一邊快速收拾著桌麵一邊道歉,“對...對不起!我昨晚用ViSiO重繪時沒注意圖層順序...”他的聲音越來越小,“本來是想優化複合索引...”
徐璐看著文檔末尾“實習生林致遠”的署名,腦海裡記憶閃現,她忽然想起幾個月前自己在消防通道砸出的高跟鞋;又想到當初實習生剛到位時她恨不得把工牌摔在HR臉上質問“為什麼給我派菜鳥?”
此刻小林像做錯事的孩子一樣低著頭手足無措。
“大家先安靜。”她叩了叩麥克風,“小林,你說說為什麼要調整這個索引?”
年輕人怔住了,投影儀藍光在他鏡片上跳動:“因為...因為監控到全表掃描次數...”
“具體數值?”徐璐打斷他。
“昨天14時至18時,v$Sqlplan顯示全表掃描觸發137次,其中82次集中在INVENTORIES表。”小林的聲音突然流暢起來,“我對比了執行計劃,發現現有索引的inClUde列沒有覆蓋lOCatiOnid字段。”
會議室裡麵,劉洋悄悄豎起大拇指。徐璐注意到這個細節,嘴角微微上揚:“思路正確,但實現方式有問題。知道為什麼老張一眼看出拓撲圖錯誤嗎?”
“因為...物理結構...”
“在OraCle裡,非聚集索引的葉子節點存儲的是rOWid,不是數據頁指針。”徐璐調出昨天深夜的ASH報告,“就像這個TX鎖爭用,你以為調整索引就能解決,其實根源在應用程序沒有正確使用悲觀鎖。”
她點擊鼠標,大屏切換成密密麻麻的等待事件圖譜:“但敢於挑戰遺留係統值得肯定,會後和劉工一起重做方案——記得先檢查UNDO表空間是否夠用。”
8:45茶水間
小林堵住正在洗杯子的徐璐,九十度鞠躬時眼鏡差點滑落:“謝謝徐工!我保證不會再...”
“把腰直起來。”徐璐甩了甩手上的水珠,“知道我為什麼留你嗎?”她抽出一張擦手紙,一邊擦拭一邊說道,“上周巡檢腳本裡那個自動清理過期歸檔日誌的模塊,是你偷偷加的吧?”
年輕人瞳孔地震——那是他利用下班時間熬了兩周寫的PythOn腳本。
“代碼裡十七處硬編碼路徑,八處沒處理異常。”她把擦手紙扔進垃圾桶,“但用rSynC增量同步歸檔日誌的思路不錯,比某些老油條強。”
說罷她轉身走向監控中心,聽到身後傳來壓抑的歡呼。
走廊拐角處,小張正舉著手機錄像:“徐姐當年罵哭三個實習生的傳說終結了?”
“再拍信不信下次你哭著喊著求我都不幫你了。”徐璐作勢要搶手機,忽然瞥見屏幕裡帶著笑意的自己。