Postgresql Incremental Materialized View Maintenance (IVM) challenges, why delay it again to targetversion 16? [closed]
Asked Answered
A

0

5

The latest message from the commit fest https://wiki.postgresql.org/wiki/Incremental_View_Maintenance#CommitFest is saying "Changed targetversion to 16" so it seems this feature will not arrive in 2022.

The initial patch was submitted in 2019 and I've recently built this https://github.com/sraoss/pgsql-ivm and tested sum rollup with inner join and it works fine from a functional standpoint, I did not perform any load/stress tests.

I understand there are a lot of potential edge cases, but straight forward cases like two table inner joins and rollups should work, no need to support partitioned tables if too difficult. These let's call them basic use cases should cover many business needs.

Also I've seen comments from users saying the lack of incremental materialized views are the only thing keeping them from migrating to postgresql.

For hardcoded use cases you can roll your own triggers like it is suggested here: can incremental view maintenance be used on postgresql13?, but this is not feasible when an application needs to create dynamic incremental materialized views at runtime.

My questions would be:

  • Can anyone explain for someone without deep knowledge of postgres internals what are some of the biggest challenges delaying this patch ?
  • Also can you provide reasons why incremental materialized views should not be released early with bare minimum support for SQL features, e.g. inner join and basic rollups (sum, count) ? For example stability concerns, or challenges in coping with feedback/issues from end-users, or difficulty in releasing enhamcements in subsequent versions as it would require rewrites of the existing triggers, etc...
Anisometric answered 10/3, 2022 at 16:58 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.