From d6f32e7b77ce5adbf47fa5a01c3f938e272439bf Mon Sep 17 00:00:00 2001 From: Adam Guo Date: Wed, 26 Mar 2025 17:07:26 +0000 Subject: [PATCH] Add querystring column to pg_ivm_immv. --- Makefile | 2 +- createas.c | 1 + pg_ivm--1.10--1.11.sql | 1 + pg_ivm.control | 2 +- pg_ivm.h | 3 ++- 5 files changed, 6 insertions(+), 3 deletions(-) create mode 100644 pg_ivm--1.10--1.11.sql diff --git a/Makefile b/Makefile index 9f770f6..e225eaa 100644 --- a/Makefile +++ b/Makefile @@ -18,7 +18,7 @@ DATA = pg_ivm--1.0.sql \ pg_ivm--1.3--1.4.sql pg_ivm--1.4--1.5.sql pg_ivm--1.5--1.6.sql \ pg_ivm--1.6--1.7.sql pg_ivm--1.7--1.8.sql pg_ivm--1.8--1.9.sql \ pg_ivm--1.9--1.10.sql \ - pg_ivm--1.10.sql + pg_ivm--1.10.sql pg_ivm--1.10--1.11.sql REGRESS = pg_ivm create_immv refresh_immv diff --git a/createas.c b/createas.c index b41fd1d..8c6ce4d 100644 --- a/createas.c +++ b/createas.c @@ -1719,6 +1719,7 @@ StoreImmvQuery(Oid viewOid, Query *viewQuery) memset(values, 0, sizeof(values)); memset(isNulls, false, sizeof(isNulls)); + isNulls[Anum_pg_ivm_immv_querystring - 1] = true; values[Anum_pg_ivm_immv_immvrelid -1 ] = ObjectIdGetDatum(viewOid); values[Anum_pg_ivm_immv_ispopulated -1 ] = BoolGetDatum(false); diff --git a/pg_ivm--1.10--1.11.sql b/pg_ivm--1.10--1.11.sql new file mode 100644 index 0000000..b093d22 --- /dev/null +++ b/pg_ivm--1.10--1.11.sql @@ -0,0 +1 @@ +ALTER TABLE pgivm.pg_ivm_immv ADD COLUMN querystring text; diff --git a/pg_ivm.control b/pg_ivm.control index 27dc5af..fcfe90d 100644 --- a/pg_ivm.control +++ b/pg_ivm.control @@ -1,6 +1,6 @@ # incremental view maintenance extension_ comment = 'incremental view maintenance on PostgreSQL' -default_version = '1.10' +default_version = '1.11' module_pathname = '$libdir/pg_ivm' relocatable = false schema = pg_catalog diff --git a/pg_ivm.h b/pg_ivm.h index 88d7003..ae79e45 100644 --- a/pg_ivm.h +++ b/pg_ivm.h @@ -20,12 +20,13 @@ #include "tcop/dest.h" #include "utils/queryenvironment.h" -#define Natts_pg_ivm_immv 4 +#define Natts_pg_ivm_immv 5 #define Anum_pg_ivm_immv_immvrelid 1 #define Anum_pg_ivm_immv_viewdef 2 #define Anum_pg_ivm_immv_ispopulated 3 #define Anum_pg_ivm_immv_lastivmupdate 4 +#define Anum_pg_ivm_immv_querystring 5 /* pg_ivm.c */