Error

ORA-00060

Plugin buscador de errores Nuevo!
Instala gratis el plugin para buscar errores de Oracle directamente desde la barra de tu navegador.

Descripción:

ORA-00060: detectado interbloqueo mientras se esperaba un recurso (deadlock detected while waiting for resource)

Causa:

Su período de sesiones y otro período de sesiones a la espera de un recurso bloqueado por la otra. Esta condición se conoce como un callejón sin salida. Para resolver el punto muerto, a uno o más estados se deshacen de la otra sesión para continuar el trabajo. Traducción automática de: Your session and another session are waiting for a resource locked by the other. This condition is known as a deadlock. To resolve the deadlock, one or more statements were rolled back for the other session to continue work.

Acción:

O bien: Traducción automática de: Either:


FORO: ¿Cómo solucionar el error?

Autor:

COMENTARIOS:

por Anónimo | 3/24/2010 8:25:53 AM

RE: ORA-00060

Al parecer es un error de un mal diseño de una aplicación, te anexo el link donde encontré esta respuesta.
http://lhorikian.blogspot.com/2007/09/deadlocks-ora-00060.html
Gracias a Leonardo Horikian por el aporte en su blog.

por David | 4/15/2010 11:58:33 PM

RE: ORA-00060

Copio el contenido del blog de Leonardo:

Qué es un Deadlock? Un Deadlock (abrazo mortal) es cuando 2 o más usuarios están esperando algún dato que está siendo loqueado por alguna sesión. Si ésto sucede, los usuarios involucrados en el Deadlock deben esperar y no pueden continuar con el procesamiento.

Cuando Oracle detecta que se produjo un Deadlock, lo que hace es cortar la ejecución del procedimiento y mostrar el siguiente mensaje de error: ORA-00060: deadlock detected while waiting for resource. Tengamos en cuenta que cuando se produce éste error, Oracle genera un archivo de trace en el directorio UDUMP con información acerca del error.

Generalmente éste problema se produce por un mal diseño de la aplicación. Veamos un ejemplo...


SQL_9iR2> CREATE TABLE sesion_1 AS
2 SELECT level id, 'nom_'||level nombre
3 FROM dual
4 CONNECT BY level <= 10 ;

Table created.

SQL_9iR2> CREATE TABLE sesion_2 AS
2 SELECT level id, 'nom_'||level nombre
3 FROM dual
4 CONNECT BY level <= 10 ;

Table created.


En la SESION 1 loqueo un registro de la tabla SESION_1 correspondiente al ID 1.


SQL_9iR2> UPDATE sesion_1
2 SET nombre = 'nom_'||id*2
3 WHERE id = 1 ;

1 row updated.


En la SESION 2 loqueo un registro de la tabla SESION_2 correspondiente al ID 1.


SQL_9iR2> UPDATE sesion_2
2 SET id = id+10
3 WHERE id = 1 ;

1 row updated.


En la SESION 1 modifico un registro de la tabla SESION_2 correspondiente al ID 1. Vemos que esta sesión se 'colgó' debido al loqueo y no nos devuelve el control. Todavía no se produjo el Deadlock... sólo se produjo un loqueo.


SQL_9iR2> UPDATE sesion_2
2 SET id = id+10
3 WHERE id = 1 ;


En la SESION 2 modifico un registro de la tabla SESION_1 correspondiente al ID 1.
Vemos que esta sesión se 'colgó' debido al loqueo y no nos devuelve el control.


SQL_9iR2> UPDATE sesion_1
2 SET nombre = 'nom_'||id*2
3 WHERE id = 1 ;


Esto va a producir un Deadlock y luego de unos segundos aparece un mensaje de error en la SESION 1:


SQL_9iR2> UPDATE sesion_2
2 SET id = id+10
3 WHERE id = 1 ;
UPDATE sesion_2
*
ERROR at line 1:
ORA-00060: deadlock detected while waiting for resource


La SESION 2 sigue colgada esperando que la SESION 1 termine la transacción que comenzó. Entonces en la SESION 1 ejecutamos...


SQL_9iR2> rollback ;

Rollback complete.


En la SESION 2 se libera automáticamente el loqueo...


SQL_9iR2> UPDATE sesion_1
2 SET nombre = 'nom_'||id*2
3 WHERE id = 1 ;

1 row updated.



Buscar errores de Oracle


Buscar en la web

 
Web orasite.com
· Tutoriales
- Export / Import Oracle 9i
- Instalación Oracle 10g
- Archivos de configuración de red para Oracle
- Administración de usuarios
- Export Oracle 10g
- init.ora spfile.ora fichero de parámetros oracle
- Configurar modo archivelog
- Introducción Oracle 10g
- Arrancar o parar base de datos Oracle
- Tunning Oracle
- Seguridad listener Oracle 10g
- Instalación statspack
- Parámetros memoria SGA
- Activar auditoria de la base de datos
- Oracle Jobs (9i)
- Controlar espacio tablespaces
- Hotbackup de una base de datos Oracle
- Búsquedas en Oracle 10g case-insensitive
- Recover database until time
- Privilegios sysoper y sysdba
- Consultas sobre V$
- Bloquear acceso a base de datos por IP
- Cambiar ubicación base de datos
- Problemas Oracle Jobs
- Reconstrucción de índices
- Encriptación e integridad de datos en Oracle
- Configuración de memoria
- Instalación de la máquina virtual Java
- Loadjava y Dropjava en Oracle
- Cambiar a modo restricted session
- Recuperación modo noarchivelog
 
· Oracle FAQ
- Oracle database
 
· Noticias
- Oracle OpenWorld 2009
- Oracle compra Sun
- Oracle 11g presentada
- Oracle vulnerable a inyección SQL en cursores
- Procesos de negocio con Oracle
- OracleXE para Debian
 
· Descargas
- Free Toad
 
· Errores Oracle
- Errores ORA
- Errores SQL
- Errores AMD
- Errores AUD
- Errores DBV
- Errores DRG
- Errores EPC
- Errores EXP
- Errores IMG
- Errores IMP
- Errores KUP
- Errores LCD
- Errores LFI
- Errores LFI0
- Errores LPX
- Errores LRM
- Errores LSX
- Errores MOD
- Errores NCR
- Errores NID
- Errores NMP
- Errores NNC
- Errores NNF
- Errores NNL
- Errores NNO
- Errores NPL
- Errores NZE
- Errores O2F
- Errores O2I
- Errores O2U
- Errores PCB
- Errores PCC
- Errores PCF
- Errores PLS
- Errores QSM
- Errores RMAN
- Errores TNS
- Errores VID
· Libros sobre Oracle
· Sitios relacionados
- Trabajos de Oracle
- ZonaOracle.com
- AjpdSoft
- La Web del Programador
· Sitios recomendados
- Cronica24.com
- TPV
- Buscar trabajo
Los contenidos de esta web son producto de la colaboración de sus usuarios, por lo que puede haber erratas. Si encuentras una información incorrecta agradeceremos que nos lo comuniques en nuestra dirección:
Cualquier información aquí publicada es de libre distribución, siempre y cuando se haga referencia mediante un link al documento original.
Orasite.com