非互換
継承テーブルとパーティションテーブルについて、親テーブルと子テーブルの生成列の有無のチェックを強化します。親テーブルの列が生成列の場合には、子テーブルも生成列である必要があります。また、親テーブルの列が生成列でない場合には、子テーブルは生成列でない必要があります。
postgres=# CREATE TABLE gtest_parent (f1 date NOT NULL, f2 bigint, f3 bigint GENERATED ALWAYS AS (f2 * 2) STORED) PARTITION BY RANGE (f1);
CREATE TABLE
postgres=# CREATE TABLE gtest_child3 PARTITION OF gtest_parent (
postgres(# f3 DEFAULT 42
postgres(# ) FOR VALUES FROM ('2016-09-01') TO ('2016-10-01');
CREATE TABLE
postgres=# CREATE TABLE gtest_parent (f1 date NOT NULL, f2 bigint, f3 bigint GENERATED ALWAYS AS (f2 * 2) STORED) PARTITION BY RANGE (f1);
CREATE TABLE
postgres=# CREATE TABLE gtest_child3 PARTITION OF gtest_parent (
postgres(# f3 DEFAULT 42
postgres(# ) FOR VALUES FROM ('2016-09-01') TO ('2016-10-01');
ERROR: column "f3" inherits from generated column but specifies default対処方法
ありません。