IVM Development Group is pleased to announce the release of [pg_ivm 1.10]( 
https://github.com/sraoss/pg_ivm/releases/tag/v1.10 ).

Changes since the v1.9 release include:

### Bug Fixes

* Fix a failure in DROP EXTENSION (Ishant Bhaskar )

    Previously, dropping pg_ivm caused the error "could not open relation with 
OID ..." 
    due to a hook function that allows DROP TABLE on an IMMV to remove its entry
    from pg_ivm_immv. Additionally, issuing DROP TABLE concurrently with DROP
     EXTENSION pg_ivm could result in the same error. 

* Prevent automatic index creation when using set-returning function (Yugo 
Nagata)

    A unique index was previously created automatically even when a 
set-returning 
    function appeared in the FROM clause, which led to errors due to key 
duplication.

* Change schema from pg_catalog to pgivm (Yugo Nagata)

    Previously, pg_upgrade failed due to permission issues because the 
pg_ivm_immv 
    catalog was created in pg_catalog. To resolve this, all objects created by 
pg_ivm
    have been moved to the pgivm schema, which is now created automatically by 
    pg_ivm.

    Breaking Change: This affects compatibility with previous releases. If you 
want to
    access objects like the create_immv function as before, you must either 
qualify
    them with the pgivm schema or adjust your search_path accordingly.

* Fixed view maintenance failures when a column is dropped from a table (Yugo 
Nagata)

    When a table contained a dropped column, incremental view maintenance 
failed with an error like:

      ```ERROR: could not find attribute 43 in subquery targetlist```

* Fix potential view inconsistency issues (Yugo Nagata)

    Previously, the view contents could become inconsistent with the base tables
    in the following scenarios:

    1) A concurrent transaction modifies a base table and commits before the
     incremental view maintenance starts in the current transaction.

    2)  A concurrent transaction modifies a base table and commits before the
     create_immv or refresh_immv command generates data.

    3) Concurrent transactions incrementally update a view with a self-join
     or modify multiple base tables simultaneously.

    These issues have now been resolved to ensure consistency.

### 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](https://github.com/sraoss/pg_ivm)

Reply via email to