Skip to content

pg_ivm 1.10 (2025-03-11)

Latest
Compare
Choose a tag to compare
@yugo-n yugo-n released this 11 Mar 14:38
· 2 commits to main since this release

What's Changed

Bug Fixes

  • Fix a failure in DROP EXTENSION by @ibhaskar2 in #96

    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 by @yugo-n in #106

    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 by @yugo-n in #116

    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 by @yugo-n in #117

    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 by @yugo-n in #121

    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.

Source Code Improvements

  • Drop unused params from ExecCreateImmv function by @reshke in #102
  • Create .gitignore file for excluding any binary/executable files by @reshke in #103
  • Clean duplicated code and some typos by @hyongtao-db in #112

New Contributors

Full Changelog: v1.9...v1.10