On 09/10/2026 13:40, Zsolt Parragi wrote:
> v5 is a trivial rebase changing tap test numbers.

Today I finally found some time revisit this patch.

== no relispopulated in pg_matviews ==

Client tools like pgAdmin rely on this column to display matview info:

diff --git a/src/backend/catalog/system_views.sql
b/src/backend/catalog/system_views.sql
index ddf801307eb..724a23d559f 100644
--- a/src/backend/catalog/system_views.sql
+++ b/src/backend/catalog/system_views.sql
@@ -150,7 +150,7 @@ CREATE VIEW pg_matviews AS
         pg_get_userbyid(C.relowner) AS matviewowner,
         T.spcname AS tablespace,
         C.relhasindex AS hasindexes,
-        C.relispopulated AS ispopulated,
+        pg_matview_is_populated(C.oid) AS ispopulated,
         pg_get_viewdef(C.oid) AS definition
     FROM pg_class C LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace)
          LEFT JOIN pg_tablespace T ON (T.oid = C.reltablespace)

With the patch applied, pgAdmin can no longer display the properties of
a matview:

column c.relispopulated does not exist
LINE 6: c.relispopulated AS with_data,
^
HINT: Perhaps you meant to reference the column "c.relpopulated".

I will take a closer look at the code in the next few days.

Best, Jim



Reply via email to