martes, 9 de noviembre de 2010

4F530E43505002EF

Ese críptico código es el que nos encontramos hace unos meses, junto con un mensaje de error no mucho más elocuente en el log de nuestro servidor de aplicaciones OAS 10.1.2.0.2.

Unexpected Signal : 11 occurred at PC=0xB7D49B2D 
Function=(null) 
Library=[...]/jdk/jre/lib/i386/server/libjvm.so 

NOTE: We are unable to locate the function name symbol for the error just occurred. Please refer to release documentation for possible reason and solutions. 

Heap at VM Abort: 
Heap 
def new generation total 3392K, used 1221K 
eden space 3072K, 33% used 
from space 320K, 63% used 
to space 320K, 0% used 
tenured generation total 29264K, used 18790K 
the space 29264K, 64% used 
compacting perm gen total 29184K, used 29050K 
the space 29184K, 99% used 

Elapsed Time = 1602 
# HotSpot Virtual Machine Error : 11 
# Error ID : 4F530E43505002EF 
# Please report this error at 
# http://java.sun.com/cgi-bin/bugreport.cgi 
# Java VM: Java HotSpot(TM) Server VM (1.4.2_06-b03 mixed mode) 
# An error report file has been saved as hs_err_pid20003.log. 
# Please refer to the file for further information. 
#

Cuando uno se encuentra con este tipo de errores sufre un repentino estado de ansiedad y se acuerda de aquel lejano día en que se decantó definitivamente por la informática como profesión.

Aunque en realidad el tema parece claro: ha habido un error de la máquina virutal de Java, ésta ha cascado irremediablemente, y tu aplicación se ha quedado tostada con el consiguiente cabreo del sufrido usuario.

Y en este caso, ¿podemos hacer algo aparte de largarle el problema a nuestro amigo Larry? (es lo que tiene comprar empresas, que te las llevas con lo bueno y lo malo).

Pues sí, podemos.

Lo que tenemos ante nosotros es la consecuencia de uno de los habituales bugs informáticos, que se resuelve con una actualización de versión de la JVM. Para este error concreto era necesario pasar de la 1.4.2_06-b03 a la 1.4.2_26_b07 (por contextualizar, se trata de una aplicación basada en ADF-UIX)

Para actualizar la JVM de una instancia de OAS ya instalada, lo que tenemos que hacer es seguir estos sencillos pasos.

- Instalar la nueva versión en la ruta .../oracle/product/10.1.2.0.2/midtier_1/j2ee/nombreInstancia/jdk.
- Modificar, a través del Enterprise Manager, la propiedad Ejecutable java de la instancia en cuestión, apuntando a la ruta 
.../oracle/product/10.1.2.0.2/midtier_1/j2ee/nombreInstancia/jdk/j2sdk1.4.2_26/bin/java, y aplicar los cambios.
- Ejecutar el comando opmnctl reload.
- Reiniciar la instancia desde el Enterprise Manager.

Y podemos seguir respirando tranquilos.

No hay comentarios:

Publicar un comentario

Cualquier aportación será bienvenida