top of page
Entradas destacadas

Error: sksasmowrt WriteConsole error 6


Una de las cosas más preocupantes en los gestores de base de datos de Oracle son los errores que se presentan de forma inesperada, ya todos estamos familiarizados con los errores desconocidos más comunes: ORA-600 y ORA-7445, de los cuales, los primeros son códigos de error interno del gestor de Oracle, mientras que los otros son códigos de error de acciones no permitidas por el s.o, pero . . . que sucede cuando detectamos un error sin código de error o referencia alguna?, o peor aún, un error del cual hasta la fecha de publicación de este artículo, no existe documentación precisa o relacionada ni si quiera en MOS (My Oracle Suport).

Este artículo tienen como objetivo hablar de un caso en específico, el cual es el error "sksasmowrt WriteConsole error 6" que cumple con los criterios perfectos para causar un dolor de cabeza y pánico de no poder saber que es o que tan grave puede ser.

¿Cuando y como se presenta?

El error "sksasmowrt WriteConsole error 6" no es tan común como se piensa que podría serlo y solamente se puede percatar del mismo cuando realiza una inspección constante de su gestor de base de datos por medio del alert<SID>.log,

Puede ser un error presentado de forma "aleatoria" y puede llegar a ser momentáneo o constante, por ello es importante, no darle una baja importancia y tomar las medidas necesarias para evitar el que se presente, si bien la afectación a corto plazo no es significativa, a largo plazo podría ser un dolor de cabeza en momentos que requiera hacer alguna recuperación.

De acuerdo a los distintos casos y la muy poca información que encontré dentro de mi investigación, se presenta siempre después de que ocurre un log switch en una base de datos que esta en modo ARCHIVE, como podremos observar, en el fragmento del alert<SID>.log de la base de datos que se presenta mas adelante, casi de forma inmediata se presenta este error, el cual no desaparece hasta que la instancia es reiniciada.

Con apoyo de un SR en MOS e investigando los trace file relacionados a el proceso ARC y a sus esclavos, este error es presentado cuando el gestor tiene problemas con los archivos de tipo archive, es decir, por alguna razón no puede utilizar completa o parcialmente los archivos de archive para escribir en ellos y se presenta bajo las siguientes situaciones:

  1. Cuando se realiza un backup continuamente: Al realizar un backup por medio de RMAN el gestor ejecuta un ALTER SYSTEM ARCHIVE LOG, lo que permite que se realice el archivado de todos los grupos de redologs que no lo han sido, al ejecutar esto, los esclavos generados por el proceso ARC, se encargan de gestionar los archivos que conformarán parte del backup, el s.o inicia un proceso que manipulara y cambiara el estado del archivo para evitar que sea borrado o manipulado durante su uso, lamentablemente cuando ejecutamos un backup casi de forma inmediata posterior a que haya terminado el actual, el s.o no des asocia de forma correcta los procesos que manipulan estos archivos y al intentar utilizarlos de nuevo, se considera que el archivo esta siendo utilizado por otro proceso y comienza a escribirse el error en el log de alertas, misma situación que sucede cuando hacemos el movimiento en linea de algún datafile y el gestor intenta borrarlo, el s.o sigue asociando que es utilizado por un proceso y no permite el borrado automático o mientras la instancia se encuentre arriba pero en este caso no se reporta ningún error porque no se quiere intentar escribir en el.

2.Cuando tenemos problemas con almacenamiento: Por default, al activar el archivado de transacciones, se guardaran los archivos en una carpeta llamada ARCHIVE ubicada dentro de la FRA, a menos, que hayamos establecido alguno de los parámetros log_archive_dest_n, los cuales indican en que ubicación se guardarán estos archivos, entonces, cuando el proceso esclavo tiene problemas para leer/escribir/manipular los archivos o su contenido, comienza a reportar el error, por lo que podría ser causa de un daño en nuestro medio de almacenamiento, espacio insuficiente o contención en la lectura y escritura.

3.-Cuando algún proceso adicional esta ocupando el archivo: Si bien, es 100% recomendable no abrir o modificar algún archivo de la base de datos, ya que esto nos podría causar problemas de inconsistencia graves, ha veces, algunos programas o procesos como los antivirus, escanean en tras fondo estos archivos y los marcan como "ocupados" para cuestiones de uso, por lo que, cuando el proceso de s.o intenta manipularlo, el estado del archivo se encuentra como "ocupado" y causa el reporte de este error.

Como se puede deducir, todo va relacionado al proceso y esclavos de s.o que manipulan los archivos, si bien no es un error que impida el funcionamiento de los servicios de base de datos, si puede llegar a ser una falla grave que nos indica algún problema con nuestro servidor de base de datos.

¿Como se diagnostica y soluciona?

Es importante identificar cual de las tres causas anteriormente descritas es la posible culpable de que tengamos estos errores, sin embargo, como buena practica es recomendable realizar las acciones preventivas y necesarias para todos los casos.

En caso de haber identificado que se presento después de uno o más backups continuos, será necesario reiniciar el servicio de base de datos, esto para que el s.o des asocie y termine todos los procesos que utilizan los archivos del gestor, ya que reiniciar solamente la instancia no será suficiente para evitar este problema, posteriormente será necesario tener cuidado con la ejecución de los comando de respaldo y dar tiempo a que el s.o limpie de forma correcta todos los procesos que manipulan los archivos antes de iniciar uno con la misma tarea.

Si el problema sigue presentándose y no es el caso de los backups, entonces será necesario verificar nuestro almacenamiento y responderse las siguientes preguntas :

¿La velocidad de lectura y escritura es la correcta?

¿ El estado de mi almacenamiento es óptimo?

¿Alguno de los discos tiene errores o fragmentación?

Como solución general y/o temporal, podría configurar una o más rutas alternas para guardar los archivos de archive en otras ubicaciones, estableciendo el valor del parámetro log_archive_dest_n, posteriormente a ello ejecutar un "ALTER SYSTEM ARCHIVE LOG CURRENT" para comenzar a crear los futuros archivos de transacciones en la nueva ruta, lo cual deberá solucionar el problema casi de forma inmediata, sin embargo, si el problema sigue presentandose, será necesario reiniciar el servicio y detectar si la nueva ubicación ya no tiene problemas, por su puesto que la nueva ubicación deberá ser en un almacenamiento distinto del que se tenía, si no , jamas terminarán sus problemas con este error.

También si usted cuenta con un almacenamiento centralizado, deberá pensar en utilizar mas almacenamiento y en distintos dispositivos, esto no solo le dará el beneficio de eliminar el problema, si no también, seguridad en sus archivos, eficiencia en el acceso y un menor tiempo de respuesta en las operaciones.

Posteriormente analice el estado de sus discos, desfragmentelos y ejecute test de calidad en las operaciones más comunes, la mayoría de los s.o tienen herramientas que nos facilitan realizar estas pruebas.

¿Como me puede afectar?

Si a pesar de los anteriormente descrito y de leer la palabra ARCHIVE y BACKUP usted aún no logra comprender cual es el riesgo, entonces déjeme detallar un poco las afectaciones con un párrafo muy corto:

"El archive es el archivado de las transacciones de la instancia de base de datos, permite recuperaciones en cualquier punto en el tiempo y respaldos en caliente de la base de datos"

Espero sea suficiente para entender el alcance del problema, si bien, no existe algún parche para este error y no es un error que impida el funcionamiento habitual de la instancia, si es algo que debe tomarse con importancia y solucionarse lo más pronto posible, nunca en las actividades de un DBA, existirá alguna tarea considerada como "insignificante", recuerde que cuidar su instancia de base de datos es como cuidar su vida.

Espero este artículo le haya sido de gran ayuda y sirva para poder resolver sus problemas.

Entradas recientes
Archivo
Buscar por tags
Síguenos
  • Facebook Basic Square
  • Twitter Basic Square
  • Google+ Basic Square
bottom of page