Actualización de PostgreSQL. Lanzamiento de reshape, una utilidad para migrar a un nuevo esquema sin dejar de trabajar

Se han generado actualizaciones correctivas para todas las ramas soportadas de PostgreSQL: 14.2, 13.6, 12.10, 11.15 y 10.20, que corrigen 55 errores identificados durante los últimos tres meses. Entre otras cosas, hemos solucionado problemas que, en circunstancias excepcionales, provocaban daños en el índice al cambiar cadenas HOT (tupla de solo montón) durante una operación VACUUM o al realizar una operación REINDEX CONCURRENTLY en índices en tablas que utilizan el mecanismo de almacenamiento TOAST.

Se corrigieron fallas al ejecutar ALTER STATISTICS y al recuperar datos con tipos de rango múltiple. Se han solucionado errores en el planificador de consultas que provocaban resultados incorrectos. Se corrigieron pérdidas de memoria al actualizar índices usando expresiones y al realizar una operación REASSIGN OWNED BY en una gran cantidad de objetos. Se proporciona la construcción de estadísticas avanzadas para tablas segmentadas.

Además, podemos destacar el lanzamiento de la utilidad Reshape, que le permite realizar actualizaciones complejas del esquema de datos en PostgreSQL sin detener el trabajo, lo que en condiciones normales requiere cambios manuales y el cierre temporal de los servicios que utilizan la base de datos. La utilidad permite cambiar del esquema de datos antiguo al nuevo sin bloqueos prolongados y sin interrumpir el ciclo de procesamiento de solicitudes. La utilidad crea automáticamente vistas de tablas con las que las aplicaciones continúan trabajando durante la migración del esquema de datos y también configura activadores que traducen las operaciones de agregar y eliminar datos entre los esquemas nuevos y antiguos.

Por lo tanto, cuando se utiliza reshape durante la migración, el esquema antiguo y el nuevo permanecen disponibles al mismo tiempo y las aplicaciones se pueden transferir gradualmente al nuevo esquema sin detener el trabajo (en infraestructuras grandes, los controladores se pueden reemplazar gradualmente del antiguo al nuevo). Una vez que se completa la migración de aplicaciones al nuevo esquema, se eliminan las vistas y los activadores creados para mantener la compatibilidad con el esquema anterior. Si se identifican problemas con las aplicaciones durante la migración, puede revertir el cambio de esquema y volver al estado anterior.

Fuente: opennet.ru

Añadir un comentario