SOLUCIONADO: Migración guaraní 3.1.0 a 3.4.1

Despues de terminar con la migración 3.0.0 a 3.1.0 inicié la migración a 3.4.1

Pude ejecutar los siguientes pasos :
svn update
bin/toba proyecto exportar -p guarani -i desarrollo
svn sw http://repositorio.siu.edu.ar/svn/guarani/versiones/3.4.1
bin/toba proyecto regenerar -p guarani -i desarrollo
bin/toba proyecto resguardar_base -p guarani -i desarrollo
bin/toba proyecto cambiar_esquema -p guarani -i desarrollo
bin/toba proyecto aplicar_pgcrypto -p guarani -i desarrollo

En el paso siguiente me da un este error:

bin/toba proyecto migrar_base -p guarani -i desarrollo

Exportando la base de negocio existente
en /usr/local/proyectos/toba/proyectos/guarani/BD/tmp/datos_locales_3.0.0 (5).sql
Ejecutando: pg_dump -Ox --inserts -n negocio -h localhost -U postgres -p 5432 -f “/usr/local/proyectos/toba/proyectos/guarani/BD/tmp/datos_locales_3.0.0 (5).sql” guarani_esfs
Exportando el esquema de auditor�a
Ejecutando: pg_dump -Ox --inserts -n negocio_auditoria -h localhost -U postgres -p 5432 -f “/usr/local/proyectos/toba/proyectos/guarani/BD/datos_auditoria_3.0.0 (5).sql” guarani_esfs
Migrando la base de la versi�n 3.0.0 (5) hasta la versi�n 3.4.1
Desactivando esquema de auditoria durante la migraci�n OK
Actualizando BD de negocios a version 3.1.0
Ejecutando Archivo: 000001.sql

ERROR ejecutando SQL:
[CODIGO]: 7
[SQLSTATE]: db_42P07
[MENSAJE]: ERROR: relation “sga_docentes_dedicacion_hs_seq” already exists
[SQL EJECUTADA]: BEGIN WORK;

– ++++++++++++++++++++++++++++++++++++++++++++++++
– SIU-GUARANI 3 - Sistema de Gesti�n Acad�mica
– Version: 3.0.0
– Type: type_mesa_examen_llamado
– Utilizado en copia masiva y generacion de mesas (f_copiar_mesa_examen(), f_generar_mesa())
– +++++…

Saludos

Hola Freddy.

Me mandas el contenido de la tabla app_versiones?
En algunos casos (depende el motor y la instalación realizada, si tienen la misma fecha) falla al obtener la ultima versión por lo que te intenta migrar de la versión 3.0.0 a la 3.4.1 directamente, sin considerar que esta en la 3.1. Estimo que ese es el error.

Saludos,

Gonzalo

Aqui va Gonzalo

version_app fecha_actualizacion
3.0.0 (5) 2012-12-27 16:25:23.469811-03

Saludos

Gonzalo, me podés tirar una punta para seguir?
Saludos

Hola Freddy

Sinceramente me huele a un error del script.
A posteriori en el script se crea nuevamente la tabla…

Yo le pondría un DROP IF EXISTS aunque seguro que existe.

Emilio

Hola Freddy:

 Yo creo que tiene que ver con esto:   [url=http://foro.comunidad.siu.edu.ar/index.php?topic=5939.msg24596]FORO[/url]

Saludos
Sergio

Hola Freddy perdón por la demora.
Me temo que surgió algún error cuando quisiste migrar a la 3.1.0.
Si este proceso hubiera terminado correctamente la tabla app_versiones tendría que tener además el registro “3.1.0 - fechaX” y no existe :S
Tenes idea que pudo haber pasado? Eso sucede (la ausencia del registro) cuando la migración no se realiza correctamente.
Realiza lo que te menciona Sergio previo a la migracion de la version 3.4.1 y fijate si se soluciona. Tene los recaudos de apuntar a los repositorios de svn adecuados cuando realizas estos cambios.

Saludos,

Gonzalo

Es extraño, no me dió ningún error la migración anterior, hay otro hilo http://foro.comunidad.siu.edu.ar/index.php?topic=5952.0
De todas manera reproduzco el último paso de la migración a 3.1.0:

bin/toba proyecto actualizar_bd -p guarani -i desarrollo

Revision Actual de la BD : 0

Actualizando el directorio de Scripts de actualizaci�n de la BD…
At revision 12655.

N� Revision a actualizar la BD : 12655

Migrando la base de la revisi�n 0 hasta la revisi�n 12655
No es necesario actualizar la BD. No se han realizado cambios entre las revisiones 0-12655
OK

Es lo único raro, pero no indica error.
Además no es una tabla, sino una secuencia, lo que está tratando de crear y ya existe, con lo cual si el proceso de migración
anterior se interrumpió, cosa que se podría deducir por lo que dice Gonzalo por el registro faltante, sigue sin
explicación el porqué la secuencia ya existe.
Me inclino más a pensar como Emilio que podría estar duplicada la creación de esa secuencia, yo podría saltear esa
instrucción, pero no sé que implicancias podría tener.
El hilo al que hace referencia Sergio me parece que se trata de un problema distinto aunque tiene en común que
no corre ningún diferencial.
Saludos

Para sacarme la duda revisé el backup de la base que hice antes de empezar la migración a 3.1.0.
Es un backup en formato SQL desde la instalación original, o sea 3.0.0, y pude ver que ya existe
ese secuenciador (sga_docentes_dedicacion_hs_seq), ahora la conclisión podría ser que al migrar
a 3.1.0 lo borra y al migrar a 3.4.1 lo vuelva a crear, y al no terminar la primera, si queda sin borrar
la segunda migración daría ese error, medio tirado de los pelos. Mas lógico pensar en un error del script
como dice Emilio.
Saludos

Freddy por favor mira el link que te pase yo!!

El problema es que tenes un 0 en la columna observaciones de app_versiones_base… fijate lo que me pegaste vos mismo:


---------------------------------------------------------------------------------------------------
  Revision Actual de la BD : 0                                                                     
 ---------------------------------------------------------------------------------------------------

Eso está mal!!!, ahi debería decir la revisión del código PHP al momento de crear la base o de actualizarla, nunca puede ser 0.

insisto en que sigas el link que te envie!
Saludos
Sergio

No tengo idea porqué está ese cero ahi, interpreto que si dice cero va a tratar de hacer un montón
de cosas que ya fueron hechas, eso suena lógico, pero no sólo no sé porque tiene cero sino tampoco
que es lo que tiene que tener. Pero siendo así, no sólo que el script de instalación dejó el cero,
la migración a 3.1.0 también dejo el cero ahi.
Si eso está mal como decís dame instrucciones de cómo arreglarlo, porque en el hilo que referencias hay
temas que no se aplican a nuestro caso.
Saludos

Hola Freddy:

Tenés que hacer eso que dice en el link. (ya lo porbaste y no funcionó?)

Emilio:
   En la tabla app_versiones_base en la columna observaciones, debería estar la revisión del código php que estaba en el momento que se realizó la operación sobre la base, ya sea creación o actualización (en este momento hay un 0) por esta causa no corre ningún diferencial. Por la fecha yo pienso que debería ser alguna revisión cerca de 11577, que tiene fecha  28/11/2012 que es el último commit antes de la fecha que tienen ahí en app_versiones_base.

Antes que nada por favor mantené un backup de la base.

Para Actualizar ese campo

UPDATE app_versiones_base SET observaciones = 11577

Luego de esto, actualiza la base, con el actualizar_bd, (el código debería estar apuntando y actualizado al tope de
http://repositorio.siu.edu.ar/svn/guarani/branches/3.0.0_uunn/)

Saludos
Sergio

Como tu fecha es 2012-12-27 el valor a setear en observaciones es: 11691

te remarco lo ultimo del post

Luego de esto, actualiza la base, con el actualizar_bd, (el código debería estar apuntando y actualizado al tope de
http://repositorio.siu.edu.ar/svn/guarani/branches/3.0.0_uunn/)
esto lo podés ver con un svn info de la carpeta guarani.

El Hilo ese continua con varias cosas que nos topamos, estaría bueno que lo veas por si te pasa lo mismo.

Saludos
Sergio

Sergio, decidimos empezar de cero de vuelta, es decir partimos de 3.0.0
Lo primero que vamos a hacer es el update:
UPDATE app_versiones_base SET observaciones = 11577
luegos aplicaremos en instructivo de migración a 3.1.0, y luego a 3.4.1
Les estaré informando

La situación inicial es la siguiente:
Path: .
URL: http://repositorio.siu.edu.ar/svn/guarani/branches/3.0.0_uunn
Repository Root: http://repositorio.siu.edu.ar/svn/guarani
Repository UUID: 0deb212f-fe2f-48c7-81b1-db03366eed1f
Revision: 11647
Node Kind: directory
Schedule: normal
Last Changed Author: florencia
Last Changed Rev: 11629
Last Changed Date: 2012-12-06 14:48:01 -0300 (Thu, 06 Dec 2012)

app_versiones_base:
“1” “3.0.0 (5)” “5” “Creacion de la Base” “2012-12-27 16:25:23.469811-03” “0”

Saludos

Ahora aparece un problema nuevo, al ejecutar

bin/toba proyecto regenerar -p guarani -i desarrollo
Existe un problema con la base de datos, por favor verifique los logs


TIEMPO: 0,095 segundos

Cual es el archivo de logs?
Saludos

Freddy:

Creo que se están refiriendo a este /toba/instalacion/logs_comandos/comandos.log

Sergio

Si, gracias sergio, es porque no estaba configurado el acceso por ip6, corregido el pg_hba
pudimos ejecutar el comando
Tambien pudimos ejecutar bin/toba proyecto actualizar_bd -p guarani -i desarrollo
pero dio un error porque en el PATH estaba la versión anterior del pg_dump.
Lo reemplazé por el nuevo y pudimos terminar la migración a 3.1.0
Ahora quedo así:

“1” “3.0.0 (5)” “0” “Creacion de la Base” “2012-12-27 16:25:23.469811-03” “11577”
“2” “3.1.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/000012.sql” “2013-06-12 15:55:10.612765-03” “12686”
“3” “3.1.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/000013.sql” “2013-06-12 15:55:10.612765-03” “12686”
“4” “3.1.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/00014i.sql” “2013-06-12 15:55:10.612765-03” “12686”

Seguimos con la migración a 3.4.1
Les informaré
Saludos

Avanzamos con la migracion a 3.4.1

svn update
At revision 5981.

bin/toba proyecto exportar -p guarani -i desarrollo


Exportaci�n PROYECTO guarani

Calculando revisiones guarani OK
Exportando datos generales…OK
Exportando componentesPHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 93 bytes) in /usr/local/proyectos/toba/php/lib/db/toba_db.php on line 377

Supongo que hay que cambiar algo en php.ini
Puedo corregir y volver a ejecutar la exportación???
Saludos

Modificamos memory_limit = 256M y pudimos exportar
en el switch
svn sw http://repositorio.siu.edu.ar/svn/guarani/versiones/3.4.1
sale el siguiente error

svn: REPORT of ‘/svn/guarani/!svn/vcc/default’: Could not read response body: Connection reset by peer (http://repositorio.siu.edu.ar)

Saludos

Repetimos el sw y pudimos terminar la migración a 3.4.1
Al final parece que todo el problema fue por ese maldito cero.
Creo que debería haber un aviso en el instructivo de migración a 3.1.0
advirtiendo de no empezar la migración si esa columna observaciones
está en cero, porque perdimos una barbaridad de tiempo por algo que
ni siquiera sabemos a que se debe, y que evedentemente, aunque por
otras causas, no fuimos los únicos que tuvimos ese problema, y sólo
nos queda pensar que algún script de la instalación original deja equivocadamente
esa columna en cero.
Espero que nadie se ofenda por la crítica
Seguimos con la migración a 3.5.0
Los mantendré informados
Saludos

Este es el estado final de la tabla
después de terminada la migración

“1” “3.0.0 (5)” “0” “Creacion de la Base” “2012-12-27 16:25:23.469811-03” “11577”
“2” “3.1.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/000012.sql” “2013-06-12 15:55:10.612765-03” “12686”
“3” “3.1.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/000013.sql” “2013-06-12 15:55:10.612765-03” “12686”
“4” “3.1.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/00014i.sql” “2013-06-12 15:55:10.612765-03” “12686”
“5” “3.2.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.2.0/000014.sql” “2013-06-12 16:42:28.48023-03” “0”
“6” “3.3.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.3.0/000015.sql” “2013-06-12 16:42:28.48023-03” “0”
“7” “3.4.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.4.0/000272.sql” “2013-06-12 16:42:28.48023-03” “0”
“8” “3.4.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.4.0/000273.sql” “2013-06-12 16:42:28.48023-03” “0”
“9” “3.4.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.4.0/000274.sql” “2013-06-12 16:42:28.48023-03” “0”
“10” “3.4.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.4.0/000275.sql” “2013-06-12 16:42:28.48023-03” “0”
“11” “3.4.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.4.0/000276.sql” “2013-06-12 16:42:28.48023-03” “0”
“12” “3.4.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.4.0/000277.sql” “2013-06-12 16:42:28.48023-03” “0”
“13” “3.4.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.4.0/000278.sql” “2013-06-12 16:42:28.48023-03” “0”
“14” “3.4.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.4.0/000279.sql” “2013-06-12 16:42:28.48023-03” “0”
“15” “3.4.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.4.0/000280.sql” “2013-06-12 16:42:28.48023-03” “0”
“16” “3.4.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.4.0/000281.sql” “2013-06-12 16:42:28.48023-03” “0”
“17” “3.4.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.4.0/000282.sql” “2013-06-12 16:42:28.48023-03” “0”
“18” “3.4.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.4.0/000283.sql” “2013-06-12 16:42:28.48023-03” “0”
“19” “3.4.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.4.0/000284.sql” “2013-06-12 16:42:28.48023-03” “0”
“20” “3.4.0” “0” “/usr/local/proyectos/toba/proyectos/guarani/BD/Diferenciales/3.4.0/000285.sql” “2013-06-12 16:42:28.48023–03” “0”

Noto que hay un montón de ceros en observaciones
¿Esto será motivo de interferencia para migrar a 3.5.0?
Saludos