Error en schema_2.sql

Hola.

Estamos haciendo pruebas de migración de 2.9.1 a 3.13. Pasamos a 2.9.4 sin problemas. Pero el job de creación de la db de migración en PG produce el siguiente error:

“2017/07/31 16:18:19 - Table exists - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) : Tipo de dato no definido
2017/07/31 16:18:19 - Table exists - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) :
2017/07/31 16:18:19 - Table exists - ERROR (version 4.4.0-stable, build 17588 from 2012-11-21 16.02.21 by buildguy) : ERROR: syntax error at or near “dato””

schema_2.sql está trunco y termina con “Tipo de dato no definido”. Fragmento final a continuación:

"CREATE TABLE mig.sga_msj_carrera (
unidad_academica varchar(5),
carrera varchar(5),
mensaje varchar(255),
Tipo de dato no definido "

Aparentemente luego de “mensaje” hay dos campos tipo Date. Pero he viato que en otras tablas esto no produce el error.

¿Posibles candidatos para este problema?

Saludos y gracias

Buenos días. Estuvimos viendo los scripts que logran la migración y sabemos que son errores que pueden surgir en este proceso.

Ese error que tenés en el archivo schema_2.sql es porque el procedure que trata de pasar un tipo de dato de informix y no encuentra cual es su correspondiente en postgres.
Por favor revisen el script_2.sql para vean el procedure que se ejecuta en informix. En la línea 126 pueden encontrar los tipos de datos a los cuales se quiere hacer corresponder para pasarlo a postgres. En su caso como no lo encuentra le agrega “Tipo de dato no definido”.
Deberían buscar cual es el vi_coltype y vi_collength para agregar un elif en ese script para que puede agregarlo, o la otra alternativa para no volver a correr todo el script de nuevo es cambiar a mano el archivo schema_2.sql.

Está tabla por lo que entiendo es una tabla personalizada, por lo que no se migrará con el kettle y la migración la deberían llevar ustedes por otro camino.
Otra alternativa mas que tienen es en el archivo script_1.sql agreguen un delete con la tabla en cuestión para que no la migre y no tener que hacer nada de lo anterior.

delete from mig23_tablas_pasar where tabname = 'nombre_tabla_personalizada';

Espero que les sirva de ayuda
Saludos.