VIRIDIAN Digital Banking - Backend 5.3.25
Changelog
- Efectivo móvil: Se optimiza el almacenamiento de la información de Efectivo Móvil en la base de datos, simplificando la forma en que se registran las transacciones para reducir el espacio utilizado.
- General: Se hicieron mejoras para reducir el tiempo de respuesta en general. (Ajustes en la emisión y validación de JWTs en cada endpoint; mejoras en los flujos de Transferencias y Efectivo Móvil)
- Transferencias: Se optimiza el almacenamiento de la información de Transferencias en la base de datos, simplificando la forma en que se registran las transacciones para reducir el espacio utilizado.
Tareas previas
Les solicitamos por favor realicen los pasos Selección de versión del release y Descarga de componentes en horario de oficina para poder tener todo el equipo a disposición en caso de error.
Selección de versión del release
-
En el servidor de administración, ejecutar el siguiente comando ansible:
ansible-playbook release.yml -t select -e="version=5.3.25"infoEste comando selecciona la versión del release.
Descarga de componentes
-
En el servidor de administración, ejecutar el siguiente comando ansible:
ansible-playbook release.yml -K -t warmupinfoEste comando descarga las nuevas versiones de todos los componentes que serán actualizados.
Instrucciones
Cambios en servidores
- Ninguno.
Cambios en base de datos
-
Ejecutar el siguiente script:
-- Eliminar duplicados en estado DRAFT cuando existe uno procesado
DELETE FROM money_order
WHERE status = 'DRAFT'
AND vfk_transaction IN (
SELECT vfk_transaction
FROM money_order
GROUP BY vfk_transaction
HAVING COUNT(*) > 1
)
AND EXISTS (
SELECT 1
FROM money_order m2
WHERE m2.vfk_transaction = money_order.vfk_transaction
AND m2.id <> money_order.id
AND m2.status <> 'DRAFT'
);
-- Eliminar duplicados remanentes (conservando el de mayor ID)
DELETE FROM money_order
WHERE id IN (
SELECT m1.id
FROM money_order m1
INNER JOIN money_order m2 ON m1.vfk_transaction = m2.vfk_transaction AND m1.id < m2.id
WHERE m1.vfk_transaction IN (
SELECT vfk_transaction
FROM money_order
GROUP BY vfk_transaction
HAVING COUNT(*) > 1
)
);
-- Corregir el estado en la tabla 'transaction'
UPDATE transaction
SET trn_status = (
SELECT m.status
FROM money_order m
WHERE m.vfk_transaction = transaction.trn_id_trn
)
WHERE trn_status = 'DRAFT'
AND trn_id_trn IN (
SELECT vfk_transaction
FROM money_order
WHERE status IN ('PAY_PENDING', 'CANCEL_IN_PROCESS')
);
-- Desbloquear órdenes en CANCEL_IN_PROCESS
UPDATE money_order
SET status = 'PAY_PENDING'
WHERE status = 'CANCEL_IN_PROCESS';
-- Eliminar el índice existente
DROP INDEX idx_money_order_vfk_transaction;
-- Crear el nuevo índice ÚNICO sobre la columna vfk_transaction
CREATE UNIQUE INDEX idx_money_order_vfk_transaction
ON money_order (vfk_transaction);
Cambios en componentes
-
En el servidor de administración, ejecutar el siguiente comando ansible:
ansible-playbook release.yml -K -t deploy -e "type=hot"
Limpieza de archivos generados por el release
-
En el servidor de administración, ejecutar el siguiente comando ansible:
ansible-playbook admin.yml -K -t cleanup
Verificación de componentes
-
En los servidores de aplicaciones, ejecutar el siguiente comando:
docker ps -vsinfoEste comando muestra el estado de todos los docker containers ordenados alfabéticamente.
-
Revisar el output del comando y asegurarse de que todos los docker containers tengan un status UP y no haya ningún docker container detenido.
Resumen de versiones
| componente | release 5.3.24 | release 5.3.25 |
|---|---|---|
| viridian-config-properties | 9.42.1 | 9.43.0 |
| server-config | 9.1.0 | |
| server-eureka | 9.1.0 | |
| vdb-routes-public | 9.13.0 | |
| vdb-routes-internal | 9.5.0 | |
| vdb-routes-bank | 9.4.0 | |
| gateway-public | 9.5.1 | |
| gateway-internal | 9.4.0 | |
| gateway-external | 9.3.0 | |
| bank-gateway | 9.8.0 | |
| bank-service | 9.4.0 | |
| batchpayments-api | 9.6.0 | |
| batchpayments-hosted | 9.5.0 | |
| beneficiaries-api | 9.9.0 | |
| digitalcredit-api | 9.5.1 | |
| digitalpay-qr | 9.22.0 | 9.23.0 |
| guaranteebond-api | 9.5.0 | |
| manager-api | 9.33.0 | 9.34.0 |
| manager-hosted | 9.13.0 | |
| myfinances-api | 9.8.0 | |
| notifications-hosted | 9.12.0 | |
| onboarding-api | 9.22.0 | |
| servicepayments-api | 9.7.0 | |
| statements-api | 9.6.0 | |
| trade-api | 9.10.3 | |
| transactions-api | 9.13.0 | 9.14.0 |
| transactions-hosted | 9.6.0 | |
| utilities-api | 9.19.0 | |
| wiretransfer-api | 9.6.0 | |
| insurance-agents | 9.5.0 | |
| insurance-sales | 9.5.0 | |
| assistant-requests | 9.8.0 | |
| frontend-vdb | 9.17.0 | |
| frontend-vdb-2 | 9.17.0 | |
| frontend-admin | 9.10.0 | |
| frontend-kiosk | 9.7.2 |