>> Query checks for following restrictions are added:
>
>
> Are all known supported cases listed below?
They are "restrictions" and are not supported.
>
>> - inheritance parent table
>> ...
>> - targetlist containing IVM column
>> - simple subquery is only supported
>>
>
> How to understand 3 items above?
The best way to understand them is looking into regression test.
src/test/regress/expected/incremental_matview.out.
>> - inheritance parent table
-- inheritance parent is not supported with IVM"
BEGIN;
CREATE TABLE parent (i int, v int);
CREATE TABLE child_a(options text) INHERITS(parent);
CREATE INCREMENTAL MATERIALIZED VIEW mv_ivm21 AS SELECT * FROM parent;
ERROR: inheritance parent is not supported on incrementally maintainable materialized view
>> - targetlist containing IVM column
-- tartget list cannot contain ivm clumn that start with '__ivm'
CREATE INCREMENTAL MATERIALIZED VIEW mv_ivm28 AS SELECT i AS "__ivm_count__" FROM mv_base_a;
ERROR: column name __ivm_count__ is not supported on incrementally maintainable materialized view
>> - simple subquery is only supported
-- subquery is not supported with outer join
CREATE INCREMENTAL MATERIALIZED VIEW mv(a,b) AS SELECT a.i, b.i FROM mv_base_a a LEFT JOIN (SELECT * FROM mv_base_b) b
ONa.i=b.i;
ERROR: this query is not allowed on incrementally maintainable materialized view
HINT: subquery is not supported with outer join
Best regards,
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese:http://www.sraoss.co.jp