Consultas sobre errores en esquema_pers

Buenos días, actualmente me estoy encargando de la migración de versión del Guarani de mi institución, de la 3.20 a la 3.23.

Mientras estuve realizando estas migraciones, en Guarani Gestion, me he topado con unos cuantos inconvenientes que antes he podido solucionar, pero por falta de documentar la solución que apliqué, me vuelvo a topar con el mismo inconveniente (y ahora no estaría pudiendo solucionarlo);

  1. Yo utilizo una VM en donde fui realizando la migración versión por versión en cada modulo, y en su momento creí que había estado correcto lo que hice, pero creo que no lo está; luego de instalar de cero Guarani Gestion en esa VM, yo realizo un Dump / Restore de la base de datos que mi institución utiliza en el servidor de Desarrollo (Stage), así tengo información para realizar las pruebas y que todo funcione correctamente, el problema que tengo es que cuando ejecuto el comando de “./guarani esquema_pers iniciar” , y luego ejecuto el de ‘conflictos’, me arroja que hay demasiados (184) errores irresolubles y resolubles (135).

Estuve revisando el log, y por lo que entendí es que varios errores son porque el script de ‘./guarani’ está tratando de crear registros o llaves que ya existen en la base de datos. Esto pasa porque justamente la base de datos de Stage que utilizo, ya tiene cargadas las personalizaciones en la base de datos

Entonces, una de las consultas que quiero hacer, es: que implican esta gran cantidad de errores al momento de ejecutar el comando? Sé que cuando se tiene que ir realizando la migración de las personalizaciones entre versiones (es decir, pasar las personalizaciones de una versión a otra), justamente el comando de ‘conflictos’ no debería de dar ningún error irresoluble, ya que no se puede continuar de forma automática (habría que ir viendo de forma manual uno por uno)

  1. Luego, estuve revisando los archivos de Guarani Gestion y me topé con uno (ruta >Path Guarani>/personalizacion/personalizacion.ini) , el cual su contenido es el siguiente;

    iniciada = “no”
    schema_personalizado = “toba_guarani_pers”
    schema_original = “desarrollo”

como se ve, el parametro ‘iniciada’ tiene valor ‘no’ , entonces lo que yo hice fue cambiar su valor a ‘si’ y al hacer un ‘systemctl restart apache2’ y recargar la pagina, me aplicó las personalizaciones sin que yo tenga que correr el comando de ‘esquema_pers iniciar’ . Hago la misma consulta de antes, que implicancias tiene aplicar las personalizaciones de esta forma? (seria tipo una “forma manual”) (Evidentemente no debe ser correcta)

  1. Por ultimo, realizo una tercera consulta, como podría solucionar el problema de la gran cantidad de errores irresolubles y resolubles a la hora de ejecutar el comando ‘esquema_pers iniciar’ ? . Teniendo en cuenta lo dicho en el punto 1) (el Dump / Restore de la base de datos de Stage) , ya que teníamos en mente realizar algo similar cuando tengamos que convertir el Guarani 3.23 a Producción; es decir, pararíamos nuestro Guarani que está en Producción actualmente, para realizar un Dump de su base de datos, y la restauraríamos en la VM que utilizamos para instalar el Guarani 3.23 , corriendo el comando de ‘./guarani migrar_base’ y luego ejecutaríamos el comando para iniciar las personalizaciones

Adjunto archivo conflictos.log que me arrojó cuando recientemente ejecuté el comando de ‘esquema_pers iniciar’ en la VM que utilicé en las migraciones

Muchas gracias, Saludos

conflictos.log (168,0 KB)

Hola Gastón, lo vemos con los técnicos y te respondemos a la brevedad.

Saludos.

Buenas tardes,

Primero que nada, agradezco el trabajo que habrán realizado para revisar mis consultas

Queria comentar algo;

Si las consultas que realicé, son muy complejas o necesitan de mas tiempo, me gustaria que, en lo posible, tratemos por ahora de enfocarnos en la 3ra consulta que realicé, enlazandola con la 1ra.

Ya que, continué realizando pruebas, y creo que por lo que revisé, en realidad las personalizaciones que tenemos actualmente en nuestra version de Stage, difieren de la instalacion del Guarani 3.23. Es decir, el proceso de actualizacion de versiones que realicé siguiendo la documentacion (https://documentacion.siu.edu.ar/wiki/SIU-Guarani/version3.20.0/actualizacion_con_personalizaciones/gestion ) está mal hecho

Entonces, decidí que quiero volver a realizarlo desde cero, para ello tengo entendido que necesito que “pisen” o reestablezcan la rama gestion/TRUNK de nuestra institucion.

Pero, a su vez, para realizarlo correctamente necesito saber como debo de realizar correctamente los pasos descriptos en la documentacion, ya que como dije en el punto 1, si tengo errores irresolubles, no podria avanzar en el proceso.

En sintesis, como quiero volver a realizar el proceso de actualizacion version por version, necesitaria en lo posible, que;

  1. nos reestablezcan la rama de gestion/TRUNK , desde la version 3.20 hasta la 3.23

  2. Que me indiquen como podria realizar correctamente el tema de ‘./guarani esquema_pers iniciar’ , teniendo en cuenta lo del Dump / Restore de la base de datos que actualmente ya tenemos , así puedo justamente realizar de forma correcta el proceso

Muchas gracias. Saludos

Gastón, por lo que estuvimos viendo tienen que seguir los pasos que indica la documentación Actualización de SIU-Guaraní Gestión a la versión 3.23.x en entorno de desarrollo con personalizaciones

Por otro lado, Si, en conflictos.log hay muchos errores del tipo Postgres dijo: ERROR: llave duplicada viola restricción de unicidad.

Ver: Conflictos al importar personalizaciones

Buenas tardes,

Agradezco la respuesta

Primero, entiendo que debo utilizar la documentación correspondiente

Segundo, gracias por citar otro posteo que tuvo un problema similar;

Lo estuve leyendo, y por lo que entiendo, lo que tendría que hacer es eliminar los registros que en el conflictos.log me figuran como que ya están en la base de datos (llave duplicada), y luego de eliminarlos ahí tendría que hacer lo de ‘esquema_pers iniciar’ . En todo caso, podes corregirme si me equivoco

De igual forma, por ahora antes de realizar lo que entendí del posteo que me citaste, tengo pensado hacer un par de pruebas mas que se me estuvieron ocurriendo en estos días, y en caso contrario, ahí realizaré lo del posteo

Muchas gracias. Saludos