任何觸發重新編譯(web.config更改,app_offline.htm,.aspx文件更改等)都會導致內核的CPU使用率達到最大值。如果重複此過程,則會使下一個內核的CPU使用率達到最大,直到總體CPU使用率達到100%。
我把windbg與sos擴展連接起來,它看起來像每個最大的核心有一個線程卡在System.AppDomain.Unload(System.AppDomain)中,另一個卡在Oracle.DataAccess.Client.OracleTuningAgent.DoScan( )。
第一線
- Oracle.DataAccess.Client.OracleTuningAgent.DoScan()
- Oracle.DataAccess.Client.OracleTuningAgent.TuningFunction()
- System.Threading.ExecutionContext.Run(系統。 Threading.ExecutionContext,System.Threading.ContextCallback,System.Object的)
- System.Threading.ThreadHelper.ThreadStart()
第二線程
- System.AppDomain.Unload(System.AppDomain)
- System.Web.HttpRuntime.ReleaseResourcesAndUnloadAppDomain(System.Object的)
- System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext ,System.Threading.ContextCallback,System.Object)
- System.Threading._ThreadPoolWaitCallback.PerformWaitCallbackInternal(System.Threading。 _ThreadPoolWaitCallback)
- System.Threading._ThreadPoolWaitCallback.PerformWaitCallback(System.Object的)
看起來AppDomain.Unload正在等待OracleTuningAgent.DoScan完成,但線程被阻塞或睡眠。
Oracle已經確認了這個問題(錯誤#9648040),這是重中之重。在此期間,可能的解決方法是:
- 回滾到11gR1中/早期客戶
- 添加的自我調整=假「到連接字符串。你當然會失去自動調整的好處。
斯科特
我不認爲它已在您列出的版本中修復。我相信它在版本11.2.0.1.2中得到了修復。 – 2011-09-19 21:18:40
謝謝比爾,修好了。 – 2011-10-04 15:40:34