pg_ivm 1.8 released

Posted on 2024-03-04 by IVM Development Group
Related Open Source

IVM Development Group is pleased to announce the release of pg_ivm 1.8.

Changes since the v1.7 release include:

Bug fixes

  • Consider tuple duplicity in maintenance of EXISTS views (Yugo Nagata)

    Previously, the duplicity of row was not considered and only one tuple was inserted even when duplicated tuples are generated as a result of inserting a tuple into a table in an EXISTS subquery.

  • Fix checking for expressions containing an EXISTS subquery (Takuma Hoshiai, Yugo Nagata)

    EXISTS subquery is currently allowed only directly under WHERE clause or in AND expression that is directly under WHERE. However, the check was insufficient previously so that views using expressions other than AND containing an EXISTS subquery could be created without an error and it caused incorrect maintenance results.

  • Check if PgIvmImmvRelationId is invalid before open it (Colin Zhao)

    Fix an error that occurs at dropping tables that occurs when pg_ivm is installed by shared_preload_libraries without executing CREATE EXTENSION command.

  • Fix an error raised when dropping pg_ivm extension (Yugo Nagata)

    Previously, DROP EXTENSION pg_ivm failed due to the failure of opening the index on the pg_ivm_immv catalog table, because the index had been already dropped at that time.

About pg_ivm

pg_ivm is an extension module that provides Incremental View Maintenance (IVM) feature.

Incremental View Maintenance (IVM) is a way to make materialized views up-to-date in which only incremental changes are computed and applied on views rather than recomputing. pg_ivm provides a kind of immediate maintenance, in which materialized views are updated immediately after a base table is modified.

Source repository: https://github.com/sraoss/pg_ivm