Lanzamiento de pg_ivm 1.4
El Grupo de Desarrollo de IVM se complace en anunciar el lanzamiento de pg_ivm 1.4.
Los cambios desde la versión v1.3 incluyen:
Corrección de errores
- Prohibición de crear IMMV que incluyan otras IMMV (Takuma Hoshiai)
Las IMMV que contienen otras IMMV o vistas materializadas por ahora no podrán ser actualizadas en caso de modificación de una tabla subyacente a la IMMV o de una vista materializada interna. - Corrección de una violación de acceso al especificar una consulta que no es SELECT en create_immv (Takuma Hoshiai)
- Corrección de un error por el que un índice único podía crearse de forma incorrecta (Yugo Nagata)
Sólo se creará un índice único si todas las claves primarias de las tablas de la cláusula FROM aparecen en la lista de destino. Debido a este error, era posible crear un índice incluso cuando existían atributos pkey procedentes únicamente de una de las relaciones de la cláusula FROM. - Corrección de errores que se producían al especificar nombres de columnas en una vista agregada (Yugo Nagata)
Cuando el número de nombres de columna especificados y la longitud de la lista de destino de la consulta de definición de la vista no coincidían, se producía una violación de acceso o fallaba el mantenimiento incremental de la vista. - Uso del bloqueo exclusivo para evitar un error en el mantenimiento de vistas causado por UPDATE o DELETE (Yugo Nagata)
Cuando una tabla era modificada por DELETE o UPDATE en transacciones concurrentes, el mantenimiento incremental de la vista podía terminar en resultados erróneos. Por el momento, este problema puede evitarse utilizando el bloqueo. Hay que tener en cuenta que las IMMV afectadas son las que contienen una sola tabla y no utilizan agregados o DISTINCT. Las IMMV con más de una tabla, o que utilizan agregados o DISTINCT, ya se actualizan de forma exclusiva.
Changelog completo: https://github.com/sraoss/pg_ivm/compare/1.3…v1.4
Información sobre pg_ivm
pg_ivm es un módulo de extensión que proporciona funciones para el Mantenimiento de Vistas Incrementales (IVM).
El Mantenimiento de Vistas Incrementales (IVM) es un método para actualizar las vistas materializadas en el que sólo se calculan y aplican cambios incrementales en las vistas en lugar de reprocesarlas. pg_ivm proporciona un tipo de mantenimiento inmediato, en el que las vistas materializadas se actualizan inmediatamente tras la modificación de una tabla base.
Repositorio fuente: https://github.com/sraoss/pg_ivm