[BUG] OBJECTSTORE_LBSS

這次遇到的問題,大概查了將近兩周才查出結果,OBJECTSTORE_LBSS這個Waittype在官網和網路上都找不到太多的資源。

遇到的問題:

突然發現有大量的Session 都在等Latch(ACCESS_METHODS_ACCESSOR_CACHE)的資源,並且造成效能低落。往Latch和 ACCESS_METHODS_ACCESSOR_CACHE查都沒有太多的方向。

檢查了一下Memory發現有異常:

嘗試Reboot SQL Server Service,會維持正常一段時間,不久後發現上圖中的Memory (Other) 會持續的上升且不會釋放。


用Script去找發現占用Memory的資源是 OBJECTSTORE_LBSS,並且會不斷成長。

找問題的途中有請教過一些高手,往Page fault 和cache hit也沒有找到異常,一般如果記憶體有物理上問題這幾兩個數值會有異常。

此外,有發現TempDB的IO似乎數值有異常,在做TempDB的調教後也沒有任何改善,因此又重新把目標定為 OBJECTSTORE_LBSS。

找到一篇文章 提到過去曾經有一個是因為 TVP 和SQL Profiler造成的BUG,如下圖,假設TVP使用到大量的Varchar(max)並同時開啟SQL Profiler,會造成這個問題。但是我目前環境的版本是SQL Server 2014 SP2,理論上應該不會遇到這個BUG。

由於,已經思無所路,所以我變嘗試將 SQL Profiler 關掉來驗證是否是一樣的問題。

-- Get the trace id
SELECT * FROM ::fn_trace_getinfo(default) WHERE property = 2;

--Stop AND Close trace
DECLARE @TraceID int
SET @TraceID = ?
EXEC sp_trace_setstatus @TraceID, 0
EXEC sp_trace_setstatus @TraceID, 2

關掉 SQL Profiler 後,問題就解了。因此應該真的是 SQL Profiler 和TVP造成的問題。於是我開始查詢微軟是否有相關的文章,後來查到這篇文章,裡面確實提到SQL Profiler和 TVP以及會出現OBJECTSTORE_LBSS的問題。可惜的是Hotfix並沒有上到SQL SERVER 2014。

[BUG] OBJECTSTORE_LBSS 有 “ 1 則迴響 ”

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s