DBAtlas · Veritabanı operasyon atlası

ORA-00494: enqueue held for too long by 'inst N, osid M'

Oracle

Ne demek?

Kritik bir kaynak lock'u (enqueue, ör. CF - control file enqueue) bir süreç tarafından izin verilenden çok daha uzun süre tutuldu ve Oracle sistemin kilitlenmesini önlemek için o süreci öldürdü. alert.log içinde 'killing enqueue blocker' kaydıyla birlikte görülür.

Neden olur?

Bir arka plan ya da kullanıcı süreci I/O darboğazı, aşırı CPU baskısı ya da işletim sistemi askıya alması (swap, disk yavaşlığı) nedeniyle önemli bir enqueue'yu izin verilen sürenin ötesinde elinde tuttu; control file (CF) enqueue için bu süre _controlfile_enqueue_timeout ile belirlenir (varsayılan 900 sn). Gizli (underscore) parametreler yalnızca Oracle Support yönlendirmesiyle değiştirilmelidir. Genellikle depolama gecikmeleri ya da LGWR/CKPT gibi süreçlerin yavaşlamasıyla tetiklenir.

Nasıl çözülür?

alert.log ve öldürülen sürecin trace dosyasını inceleyip hangi enqueue'nun (çoğunlukla control file) ve hangi arka plan sürecinin sorumlu olduğunu belirleyin. Asıl neden genellikle depolama/G-Ç gecikmesidir: disk yanıt sürelerini, çoklu yol (multipath) ve denetim (controller) sağlığını kontrol edin. CPU/bellek baskısını ve swap kullanımını azaltın. Tekrar ederse Oracle Support ile trace analizini paylaşın.

DBAtlas'ta aç →

Aynı motorda diğer kayıtlar