ORA-00494: enqueue held for too long by 'inst N, osid M' (enqueue détenu trop longtemps par 'inst N, osid M')
OracleQue signifie cette erreur ?
Un enqueue de ressource critique (par ex. CF - enqueue du fichier de contrôle) a été détenu par un processus bien plus longtemps que permis, et Oracle a tué ce processus pour éviter que le système se fige. Apparaît dans l'alert.log avec une entrée 'killing enqueue blocker'.
Cause
Un processus d'arrière-plan ou utilisateur a détenu un enqueue important au-delà du délai autorisé à cause d'un goulot d'étranglement I/O, d'une forte pression CPU ou d'un blocage de l'OS (swap, disques lents) ; pour l'enqueue du fichier de contrôle (CF), ce délai est fixé par _controlfile_enqueue_timeout (900 s par défaut). Les paramètres cachés (underscore) ne doivent être modifiés que sur indication d'Oracle Support. Généralement déclenché par la latence du stockage ou des processus lents comme LGWR/CKPT.
Comment la corriger
Examinez l'alert.log et le fichier de trace du processus tué pour déterminer quel enqueue (généralement le fichier de contrôle) et quel processus d'arrière-plan sont en cause. La vraie cause est généralement la latence du stockage/des I/O : vérifiez les temps de réponse des disques, le multipath et l'état des contrôleurs. Réduisez la pression CPU/mémoire et l'utilisation du swap. Si cela se répète, partagez l'analyse de la trace avec Oracle Support.
Autres entrées pour ce moteur
- ORA-01102cannot mount database in EXCLUSIVE mode (impossible de monter la base en mode EXCLUSIVE)
- ORA-29913error in executing ODCIEXTTABLEOPEN callout (erreur lors de l'exécution du callout ODCIEXTTABLEOPEN)
- ORA-19804cannot reclaim N bytes disk space from M bytes limit (impossible de récupérer N octets d'espace disque sur la limite de M octets)
- ORA-04021timeout occurred while waiting to lock object (timeout en attendant le verrouillage de l'objet)
- ORA-04061existing state of package/procedure has been invalidated (l'état existant du package/de la procédure a été invalidé)
- ORA-01466unable to read data - table definition has changed (lecture des données impossible : la définition de la table a changé)
- ORA-08176consistent read failure; rollback data not available (échec de lecture cohérente ; données de rollback indisponibles)