sraoss / pgsql-ivm

IVM (Incremental View Maintenance) development for PostgreSQL
Other
127 stars 12 forks source link

Could not create IMMV including types which don't have an equality operator #48

Open yugo-n opened 4 years ago

yugo-n commented 4 years ago

For example, box and json type cannot be used.

test4=# create table boxes (b box);
CREATE TABLE
test4=# create incremental materialized view v as select * from boxes ;
ERROR:  could not identify an equality operator for type box
test4=# create table j (d json);
CREATE TABLE
test4=# create incremental materialized view v as select * from j ;
ERROR:  could not identify an equality operator for type json

jsonb can be used.

test4=# create table j2 (d jsonb);
CREATE TABLE
test4=# create incremental materialized view v as select * from j2 ;
SELECT 0
yugo-n commented 2 years ago

Since #92 , we can create IMMV using such base tables, but we cannot insert/delete/update the table, which results in the same error. We should be prevent from creating IMMV at the definition time.