Hola buenos dias estoy teniendo un problema al querer migrar una base desarrollo de la version 3.18.0 a la 3.19.0 para ir haciendo pruebas y luego ya actualizar en prod.
al hacer el punto ./guarani migrar_base, dentro de la carpeta bin me sale el siguiente error.
root@e49fdb7ddb85:/var/local/gestion/bin# ./guarani migrar_base
Ejecutado: 17/11/21 12:00:20
Migrando la base de la versi�n 3.18.0 hasta la versi�n 3.19.0
Desactivando esquema de auditoria durante la migraci�n OK
Actualizando BD de negocios a version 3.18.1
Actualizando BD de negocios a version 3.19.0
Ejecutando Archivo: 001430.sql
. Ejecutando Archivo: 001431.sql
. Ejecutando Archivo: 001432.sql
. Ejecutando Archivo: 001433.sql
. Ejecutando Archivo: 001434.sql
. Ejecutando Archivo: 001435.sql
. Ejecutando Archivo: 001436.sql
. Ejecutando Archivo: 001437.sql
. Ejecutando Archivo: 001438.sql
ERROR ejecutando SQL:
[CODIGO]: 7
[SQLSTATE]: db_42704
[MENSAJE]: ERROR: trigger “tdb_sga_propuestas_ra” for table “sga_propuestas_ra” does not exist
[SQL EJECUTADA]: – +++++++++++++++++++++++++++++++++++++++
– Script de conversi�n 001438.sql
– +++++++++++++++++++++++++++++++++++++++
– BEGIN WORK;
– +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
– Trigger de DELETE tdb_sga_propuestas_ra
– TRIGGER BEFORE DELETE
– Tabla: sga_propuestas_ra
– Version 3.0.0
– +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
– DROP FUNCTION ftdb_sga_propuestas_ra();
CREATE OR REPLACE FUNCTION ftdb_sga_propuestas_ra() RETURNS TRIGGER AS $BODY$
DECLARE
_periodos_insc record;
_requisitos_ingreso record;
_requisitos_x_accion record;
_entidad_ra integer;
BEGIN
– Recupero la entidad de la RA.
SELECT entidad INTO _entidad_ra
FROM sga_responsables_academicas
WHERE responsable_academica = OLD.responsable_academica;
-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- Aplanado de per�odos de inscripci�n a propuesta, per�odos lectivos y turnos de examen.
-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
FOR _periodos_insc IN SELECT sga_periodos_inscripcion_entidad.periodo_insc
FROM sga_periodos_inscripcion_entidad
WHERE sga_periodos_inscripcion_entidad.entidad = _entidad_ra
LOOP
-- Borro los datos del periodo de inscripcion
DELETE
FROM sga_periodos_inscripcion_aplanado
WHERE sga_periodos_inscripcion_aplanado.periodo_insc = _periodos_insc.periodo_insc;
-- Inserto en el aplanado las versiones de planes de las propuestas
INSERT INTO sga_periodos_inscripcion_aplanado (periodo_insc, plan_version)
SELECT _periodos_insc.periodo_insc,
sga_planes_versiones.plan_version
FROM sga_periodos_inscripcion_entidad,
sga_responsables_academicas,
sga_propuestas_ra,
sga_planes,
sga_planes_versiones
WHERE sga_periodos_inscripcion_entidad.periodo_insc = _periodos_insc.periodo_insc AND
sga_periodos_inscripcion_entidad.entidad = sga_responsables_academicas.entidad AND
sga_responsables_academicas.responsable_academica = sga_propuestas_ra.responsable_academica AND
sga_propuestas_ra.propuesta = sga_planes.propuesta AND
sga_planes.plan = sga_planes_versiones.plan AND
sga_planes_versiones.estado IN ('V','A');
END LOOP;
-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- Aplanado de requisitos de ingreso.
-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
FOR _requisitos_ingreso IN SELECT sga_requisitos_ingreso_entidades.requisito_propuesta
FROM sga_requisitos_ingreso_entidades
WHERE sga_requisitos_ingreso_entidades.entidad = _entidad_ra
LOOP
DELETE
FROM sga_requisitos_ingreso_aplanado
WHERE sga_requisitos_ingreso_aplanado.requisito_propuesta = _requisitos_ingreso.requisito_propuesta;
INSERT INTO sga_requisitos_ingreso_aplanado (requisito_propuesta, plan_version)
SELECT DISTINCT _requisitos_ingreso.requisito_propuesta,
sga_planes_versiones.plan_version
FROM sga_requisitos_ingreso_entidades,
sga_responsables_academicas,
sga_propuestas_ra,
sga_planes,
sga_planes_versiones
WHERE sga_requisitos_ingreso_entidades.requisito_propuesta = _requisitos_ingreso.requisito_propuesta AND
sga_requisitos_ingreso_entidades.entidad = sga_responsables_academicas.entidad AND
sga_responsables_academicas.responsable_academica = sga_propuestas_ra.responsable_academica AND
sga_propuestas_ra.propuesta = sga_planes.propuesta AND
sga_planes.plan = sga_planes_versiones.plan AND
sga_planes_versiones.estado IN ('V','A');
END LOOP;
-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- Aplanado de requisitos por acci�n.
-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
FOR _requisitos_x_accion IN SELECT sga_requisitos_x_accion.requisito_accion
FROM sga_requisitos_x_accion,
sga_requisitos_grupos
WHERE sga_requisitos_x_accion.grupo_requisito = sga_requisitos_grupos.grupo_requisito AND
sga_requisitos_grupos.entidad = _entidad_ra
LOOP
DELETE
FROM sga_requisitos_aplanado
WHERE sga_requisitos_aplanado.requisito_accion = _requisitos_x_accion.requisito_accion;
INSERT INTO sga_requisitos_aplanado (requisito_accion, plan_version)
SELECT _requisitos_x_accion.requisito_accion,
sga_planes_versiones.plan_version
FROM sga_requisitos_x_accion,
sga_requisitos_grupos,
sga_responsables_academicas,
sga_propuestas_ra,
sga_planes,
sga_planes_versiones
WHERE sga_requisitos_x_accion.requisito_accion = _requisitos_x_accion.requisito_accion AND
sga_requisitos_x_accion.grupo_requisito = sga_requisitos_grupos.grupo_requisito AND
sga_requisitos_grupos.entidad = sga_responsables_academicas.entidad AND
sga_responsables_academicas.responsable_academica = sga_propuestas_ra.responsable_academica AND
sga_propuestas_ra.propuesta = sga_planes.propuesta AND
sga_planes.plan = sga_planes_versiones.plan AND
sga_planes_versiones.estado IN ('V','A');
END LOOP;
RETURN OLD;
END;
$BODY$
LANGUAGE plpgsql;
– +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
– Trigger de DELETE sobre sga_propuestas_ra
– +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
DROP TRIGGER tdb_sga_propuestas_ra ON sga_propuestas_ra RESTRICT;
CREATE TRIGGER tdb_sga_propuestas_ra
AFTER DELETE ON sga_propuestas_ra
FOR EACH ROW EXECUTE PROCEDURE ftdb_sga_propuestas_ra();
– COMMIT WORK;
– +++++++++++++++++++++++++++++++++++++++
– Fin Script de conversi�n 001438.sql
– +++++++++++++++++++++++++++++++++++++++
Hubo errores en la migraci�n.
TIEMPO: 0,199 segundos