本來代打一年,但大老闆主動提出,去跟人家把之後開發工作都接回來的案子,2 個多星期前業主反應某一個報表查詢跑不出結果,看程式 Log 就是查詢跑太久、Timeout 造成 SQLException 的簡單 Case,但 SA (亮點,人家的案子有分工、有 SA 耶!) 說他在 SQL Server Management Studio 上跑相同的 SQL 1 秒就跑出來了,覺得不是 SQL 的問題,請我再幫忙查測。
這什麼疑難雜症!而且我代打時沒有動到這個報表,前一手完成這個功能一直都可以用,怎麼我接手了就出問題,心裡一直想著本來 6/30 前一年案子結束我就可以撤退,現在這個問題變成我的問題了,然後現在又代理待產同事的工作,本來就內外雙修,又維運內部資訊系統,整天被追殺,又兼外面小 ICT 案子,也是整天被追殺,現在又多一個債主追殺,無奈又極度不平衡。
假日抽空連進業主環境,在我也不熟悉的 SQL Server 上東查西看,Google 了碼農的好朋友 StackOverFlow,查到一篇症狀相似的文章,依樣畫葫蘆建了一些 Stored Procedure 來驗證,發現餵查詢條件的變數寫法不一樣,執行的 Execution Plan 就不同,快的只要 1 秒 scan 8,000 多筆資料就結束,慢的要跑 8 秒 scan 千萬筆資料才結束,這我那有辦法處理!截圖發了信,請 SA、PM 找 DBA 來支援,已讀不回。
接著 PM 充份發揮了種花美德,要 DBA 支援沒有、要求安裝分析軟體也被已讀不回,還打電話來問我說怎麼還沒解決,回她說我在等她回覆能不能裝分析軟體,還跟我說怎麼會你看我我看你,要儘快解決問題呀!我不是就在解決問題嗎?不支援 DBA 就問妳能不能裝分析軟體,我無師通靈自己來搞嗎?妳已讀不回還怪我怎麼大家看來看去,不愧是 PMP 認證,專長就是鬼叫問題怎麼還沒解決。
還好前一手企分本司 (本人在種花最稱讚、最推崇的 BU) 人很好,沒有射後不理,3 個人幫忙討論、提供建議,讓我感到人情溫暖,最後在 PM 步步進逼,且業主是公家單位、有機構長官的壓力下,決定在不知為何 Execution Plan 不同的原因下,開工改 SQL,瞎改亂槍打鳥,拿業主正式環境來 trial-and-error。竟然給我打中了,改了一次 SQL 就中大獎,改完報表 1 秒就跑出結果來了!
雖然不知道背後的原因,但至少可以暫時交差了,苦的是幾乎所有報表 SQL 寫法都相似,所以這次發生的問題,合理預期之後其它報表也會發生,之後還有得改。
怎麼會有人主動要求去收別人開發的案子呢?攬尾包衰,就是在講我現在遭遇的處境。失眠 2 個星期、假日在家查測苦思、改 Code 在沒有測試環境驗證的情況下,冒險硬上業主正式環境,這些辛苦、風險承擔都不算績效,大老闆根本不當有這些事 (雖然會有這些事是他起頭的)。
無怪呼聽到組織要整併,老子心裡爽得不得了,看要叫我維運 SSO 還是做外部 ICT 專案,自己選一個啦!兩邊都是塞到翻的屎缺,我無論分到那一邊都是爽啦!早改早解脫,最好不要 delay。
週末買威力彩,看會不會中獎。
改組後再凹我內外雙修,我就買手排車,不是,我就開履歷,看能不能去輪班數鈔票。