Skip to main content

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.
Fecha: martes, 4 de agosto de 2026

Tareas previas

info

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

  1. En el servidor de administración, ejecutar el siguiente comando ansible:

    ansible-playbook release.yml -t select -e="version=5.3.25"
    info

    Este comando selecciona la versión del release.

Descarga de componentes

  1. En el servidor de administración, ejecutar el siguiente comando ansible:

    ansible-playbook release.yml -K -t warmup
    info

    Este comando descarga las nuevas versiones de todos los componentes que serán actualizados.

Instrucciones

Cambios en servidores

  1. Ninguno.

Cambios en base de datos

  1. 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

  1. 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

  1. En el servidor de administración, ejecutar el siguiente comando ansible:

    ansible-playbook admin.yml -K -t cleanup

Verificación de componentes

  1. En los servidores de aplicaciones, ejecutar el siguiente comando:

    docker ps -vs
    info

    Este comando muestra el estado de todos los docker containers ordenados alfabéticamente.

  2. 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

componenterelease 5.3.24release 5.3.25
viridian-config-properties9.42.19.43.0
server-config9.1.0
server-eureka9.1.0
vdb-routes-public9.13.0
vdb-routes-internal9.5.0
vdb-routes-bank9.4.0
gateway-public9.5.1
gateway-internal9.4.0
gateway-external9.3.0
bank-gateway9.8.0
bank-service9.4.0
batchpayments-api9.6.0
batchpayments-hosted9.5.0
beneficiaries-api9.9.0
digitalcredit-api9.5.1
digitalpay-qr9.22.09.23.0
guaranteebond-api9.5.0
manager-api9.33.09.34.0
manager-hosted9.13.0
myfinances-api9.8.0
notifications-hosted9.12.0
onboarding-api9.22.0
servicepayments-api9.7.0
statements-api9.6.0
trade-api9.10.3
transactions-api9.13.09.14.0
transactions-hosted9.6.0
utilities-api9.19.0
wiretransfer-api9.6.0
insurance-agents9.5.0
insurance-sales9.5.0
assistant-requests9.8.0
frontend-vdb9.17.0
frontend-vdb-29.17.0
frontend-admin9.10.0
frontend-kiosk9.7.2