ORA-02393: exceeded call limit on CPU usage
OracleNe demek?
Oturuma atanmış bir kaynak profilinde (resource profile) tanımlı, tek bir çağrı (call) için izin verilen CPU süresi (CPU_PER_CALL) aşıldı ve Oracle o çağrıyı sonlandırdı. Kaynak sınırlaması amaçlı devreye giren bir korumadır.
Neden olur?
Kullanıcının profilinde CPU_PER_CALL limiti tanımlı ve RESOURCE_LIMIT=TRUE; çalıştırılan tek bir SQL/PLSQL çağrısı bu CPU eşiğini aştı. Genellikle verimsiz/kontrolsüz bir sorgunun beklenenden çok daha fazla CPU tüketmesiyle tetiklenir.
Nasıl çözülür?
Sorguyu optimize edin (uygun index, doğru plan, gereksiz tam tablo taramalarını kaldırma) ki CPU tüketimi limitin altına insin. İş gereksinimi meşruysa profildeki CPU_PER_CALL değerini uygun kullanıcı için artırın ya da UNLIMITED yapın: ALTER PROFILE ... LIMIT CPU_PER_CALL ...; Kaynak yönetimini profil yerine Database Resource Manager ile daha esnek yönetmeyi değerlendirin.