ORA-00494: enqueue held for too long by 'inst N, osid M'
OracleWas bedeutet das?
Eine kritische Ressourcen-Enqueue (z. B. CF - Control File Enqueue) wurde von einem Prozess weit länger als erlaubt gehalten, und Oracle hat diesen Prozess beendet, um ein Hängen des Systems zu verhindern. Erscheint im alert.log zusammen mit einem Eintrag 'killing enqueue blocker'.
Ursache
Ein Hintergrund- oder Benutzerprozess hat eine wichtige Enqueue wegen eines I/O-Engpasses, hohen CPU-Drucks oder eines Hängers im Betriebssystem (Swapping, langsame Platten) über die erlaubte Zeit hinaus gehalten; für die Control File (CF) Enqueue wird diese Zeit durch _controlfile_enqueue_timeout festgelegt (Standard 900 s). Versteckte Parameter (mit Unterstrich) sollten nur unter Anleitung von Oracle Support geändert werden. Meist ausgelöst durch Speicherlatenz oder langsame Prozesse wie LGWR/CKPT.
Lösung
Prüfe das alert.log und die Trace-Datei des beendeten Prozesses, um festzustellen, welche Enqueue (meist das Control File) und welcher Hintergrundprozess verantwortlich ist. Die eigentliche Ursache ist meist Speicher-/I/O-Latenz: Prüfe Antwortzeiten der Platten, Multipath und den Zustand der Controller. Reduziere CPU-/Speicherdruck und Swap-Nutzung. Tritt es erneut auf, teile die Trace-Analyse mit Oracle Support.
Weitere Einträge zu dieser Datenbank
- ORA-01102cannot mount database in EXCLUSIVE mode
- ORA-29913error in executing ODCIEXTTABLEOPEN callout
- ORA-19804cannot reclaim N bytes disk space from M bytes limit
- ORA-04021timeout occurred while waiting to lock object
- ORA-04061existing state of package/procedure has been invalidated
- ORA-01466unable to read data - table definition has changed
- ORA-08176consistent read failure; rollback data not available