Por lo tanto, si necesitas un documento oficial (Oracle) para respaldar tu diagnóstico o disfrutas mucho usando pesadas páginas con Flash, entonces podrías intentar encontrar información sobre esos errores en Metalink. Pero primero, tendrás que recolectar información sobre el error en el archivo del alert log y los archivos trace generados:
$ more alert_mydb.log
...skipping...
Wed Oct 13 11:56:33 2008
Errors in file /oracle/admin/mydb/udump/mydb_ora_11180.trc:
ORA-00600: internal error code, arguments: [736], [7], [0], [128], [128], [], [], []
Wed Oct 13 11:56:35 2008
Errors in file /oracle/admin/mydb/udump/mydb_ora_11180.trc:
ORA-07445: exception encountered: core dump [kxsbndinf()+604] [SIGSEGV] [unknown code] [0x100010001] [] []
ORA-00600: internal error code, arguments: [736], [7], [0], [128], [128], [], [], []
Wed Oct 13 11:56:36 2008
Errors in file /oracle/admin/mydb/udump/mydb_ora_11180.trc:
ORA-07445: exception encountered: core dump [kxsbndinf()+604] [SIGSEGV] [unknown code] [0x100010001] [] []
ORA-07445: exception encountered: core dump [kxsbndinf()+604] [SIGSEGV] [unknown code] [0x100010001] [] []
ORA-00600: internal error code, arguments: [736], [7], [0], [128], [128], [], [], []
$ more /oracle/admin/mydb/udump/mydb_ora_11180.trc
/oracle/admin/mydb/udump/mydb_ora_11180.trc
Oracle9i Enterprise Edition Release 9.2.0.5.0 - 64bit Production
With the Partitioning option
JServer Release 9.2.0.5.0 - Production
ORACLE_HOME = /oracle/product/9.2
System name: HP-UX
Node name: myserver
Release: B.11.11
Version: U
Machine: 9000/800
Instance name: mydb
Redo thread mounted by this instance: 1
Oracle process number: 28
Unix process pid: 11180, image: oracle@myserver (TNS V1-V3)
*** SESSION ID:(31.12323) 2008-10-13 11:56:33.939
*** 2008-10-13 11:56:33.939
ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [736], [7], [0], [128], [128], [], [], []
Current SQL statement for this session:
INSERT INTO MYTABLE (FIELD1, FIELD2, FIELD3) VALUES (SYSDATE, :B1, :B2)
----- PL/SQL Call Stack -----
object line object
handle number name
c0000000aecb8208 14 function MYUSER.MYFUNCTION1
c0000000ae910e40 58 function MYUSER.MYFUNCTION2
c0000000ae91a908 1 anonymous block
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ksedmp()+184 ? ksedst() 4000000002D91857 ?
000000004 ?
C0000000ADD000E8 ?
000000000 ?
ksfdmp()+32 ? ksedmp() C0000000B162AD60 ?
800003FA00054A68 ?
000000007 ?
C0000000B1628A40 ?
kgeriv()+152 ? ksfdmp() 000000007 ?
C0000000B1628A40 ?
40000000011979C3 ?
800000010000B980 ?
kgeasi()+172 ? kgeriv() 800000010000B980 ?
800000010000B8A8 ?
800000010000B3D8 ?
80000001000DA060 ?
kxsrbb()+1972 ? kgeasi() C0000000B162AD60 ?
800003FFC0001D20 ?
000115464 ? 000000030 ?
kxsxsi()+668 ? kxsrbb() 800000000000000 ?
4000000000844158 ?
000008108 ?
40000000004E55F0 ?
opitca()+5140 ? kxsxsi() 800000000000000 ?
80000001000DB8B0 ?
800003FFC00010C8 ?
C0000000B162A99C ?
kkslod()+2932 ? opitca() 80000001000C10B0 ?
800003F980068828 ?
C0000000AC3B3D50 ?
000000000 ?
kglobld()+1516 ? kkslod() 80000001000D90B8 ?
400000000071C2A0 ?
DD40F440010385D0 ?
000000000 ?
kglobpn()+1156 ? kglobld() 00000009C ? 000000000 ?
800003FFBFFFD4C0 ?
Si no lo has hecho, lee el documento de Metalink Master Note for Diagnosing ORA-600 para entender lo básico de diagnosticar errores, y si lees cuidadosamente notarás una bonita herramienta llamada ORA-600/ORA-7445 Error Look-up; será mejor usar la versión con Flash de este documento para tener todas las características disponibles.
Con esta herramienta tendrás dos opciones para buscar errores, la que recomiendo probar primero es Look-up By Error or Error Code's First Argument. En este cuadro tienes que seleccionar el código de error (ORA-600/ORA-7445), ingresar los argumentos del código de error en orden (como [736], [7], [0], [128]), y seleccionar tu versión de base de datos si aplica. Mientras más argumentos pongas más preciso será el diagnóstico que obtengas, pero si no obtienes nada intenta poner menos argumentos.
Si no estás seguro sobre este resultado, prueba la opción Search by Stack Trace. Ahí tienes que poner el volcado de la pila por abajo de la línea punteada; de nuevo, mientras más información del volcado de la pila pongas más preciso será el diagnóstico que obtengas, pero si no obtienes nada intenta poner menos información del volcado de la pila.
Eso es! De esta manera puedes buscar información sobre bugs de Oracle en Metalink con menos sufrimiento; espero que no tengas que usar esta herramienta frecuentemente.
No hay comentarios.:
Publicar un comentario