Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Penyedia data Oracle mematok proses pekerja IIS saat situs web dihentikan

Apa pun yang memicu kompilasi ulang (perubahan web.config, app_offline.htm, perubahan file .aspx, dll.) menyebabkan penggunaan CPU pada inti menjadi maksimal. Jika Anda mengulangi prosesnya, ini akan memaksimalkan penggunaan CPU pada inti berikutnya, hingga penggunaan CPU secara keseluruhan mencapai 100%.

Saya menghubungkan windbg dengan ekstensi sos dan sepertinya untuk setiap inti maksimal ada 1 utas yang macet di System.AppDomain.Unload(System.AppDomain) dan yang lain macet di Oracle.DataAccess.Client.OracleTuningAgent.DoScan().

Utas pertama

  • Oracle.DataAccess.Client.OracleTuningAgent.DoScan()
  • Oracle.DataAccess.Client.OracleTuningAgent.TuningFunction()
  • System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
  • System.Threading.ThreadHelper.ThreadStart()

Utas kedua

  • 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)

Sepertinya AppDomain.Unload sedang menunggu di OracleTuningAgent.DoScan untuk menyelesaikannya, tetapi utas tersebut diblokir atau sedang tidur.

Oracle telah mengkonfirmasi masalah ini (bug # 9648040) dan ini adalah prioritas utama. Sementara itu, solusi yang mungkin adalah:

  1. Kembali ke 11gR1/klien sebelumnya
  2. Tambahkan 'Self Tuning=false' ke string koneksi. Anda tentu saja akan kehilangan manfaat dari penyetelan otomatis.

-Scott



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara menangani parameter opsional dalam kueri SQL?

  2. Apakah Saya Masih Perlu Menginstal Oracle Client jika Menggunakan Microsoft ODBC agar Oracle dapat terhubung ke Oracle Database?

  3. Oracle:Menggunakan subquery dalam pemicu

  4. Prosedur Tersimpan SQL Server dari Oracle®

  5. Kebocoran Memori dengan OracleCommand