Jun 13, 2018

Error en golden gate ERROR OGG-00303 Problem at line 37. Expecting file, table, or record definition: TimeZone



Hace poco me ha sucedido que durante una prueba de replicación de goldengate al momento de levantar el replicador este se me ha caido con el error siguiente:

ERROR OGG-00303 Problem at line 37. Expecting file, table, or record definition: TimeZone


El replicador ocupa un archivo de definición el cual fue credo con un goldengate 11g (goldengate origen) y estoy replicando hacia un ambiente goldengate 12c (goldengate destino). He ahi el problema. La versión 12c de goldengate integra un parámetro de Timezone al archivo de definición que el GG 11g no reconoce.

(linea de archivo de definición de mi replicador)
SOURCEDEFS ./dirdef/archivo_definicion_tablas_origen.def

Aqui la siguiente nota de soporte que explica como arreglar el problema.
OGG v11.2.1 Java Adapter Abend: OGG-00303 Expecting File, Table, Or Record Definition: TimeZone (Doc ID 2040347.1)

La solución es eliminar del archivo de definición el parámetro TimeZone. Luego de eliminar ese parámetro nuestro replicador levantará sin problemas.


Jun 5, 2018

Bug 19213447 - ORA-600 [qkaffsindex3] sobre comandos Merge con índices basados en función

Dejo un tips que me paso hace poco en un cliente al ejecutar un comando MERGE sobre una base de datos 12cR1. Al ejecutar el merge sobre una tabla este devolvía un error interno del tipo: 

 ORA-600 [qkaffsindex3]


Investigando encontré que esto es un Bug que afecta a los releases de base de datos 12cR1. Esto sucede por un bug que afecta a las setencias MERGE que se realizan sobre tablas con índices basados en función (como es mi caso). Para evitar ese error se da un workaround en la siguiente nota:
Bug 19213447 - ORA-600 [qkaffsindex3] on MERGE query with function based indexes present (Doc ID 19213447.8)

El workaround es evitar que el optimizador ocupe en el plan algún índice basado en función (lo que podría traer alguna degradación de rendimiento pero evitar el error de Ora-600 en si)
alter session set "_disable_function_based_index"=true ;

Después de lo anterior ya no he vuelto a tener problemas.
Saludos.