ページの先頭行へ戻る
Enterprise Postgres 17 リリース情報

2.3.153 REINDEX CONCURRENTLYの前後でのプランナ統計情報の変更

非互換

FUJITSU Enterprise Postgres 13では、REINDEX CONCURRENTLYの前後でインデックス式のプランナ統計情報が維持されるようになります。

FUJITSU Enterprise Postgres 12以前の場合

REINDEX CONCURRENTLY の前後でインデックス式のプランナ統計情報が維持しません。

[例]

=# CREATE TABLE concur_exprs_tab (c1 int , c2 boolean);
=# INSERT INTO concur_exprs_tab (c1, c2) VALUES (1369652450, FALSE);
=# CREATE UNIQUE INDEX concur_exprs_index_expr
-#   ON concur_exprs_tab ((c1::text COLLATE "C"));
=# ANALYZE concur_exprs_tab;
=# SELECT starelid::regclass, count(*) FROM pg_statistic WHERE starelid IN (
(#   'concur_exprs_index_expr'::regclass)
-#   GROUP BY starelid ORDER BY starelid::regclass::text;
        starelid         | count
-------------------------+-------
 concur_exprs_index_expr |     1
(1 row)
=# REINDEX TABLE CONCURRENTLY concur_exprs_tab;
=# SELECT starelid::regclass, count(*) FROM pg_statistic WHERE starelid IN (
(#   'concur_exprs_index_expr'::regclass)
-#   GROUP BY starelid ORDER BY starelid::regclass::text;
 starelid | count
----------+-------
(0 row)
FUJITSU Enterprise Postgres 13の場合

REINDEX CONCURRENTLY の前後でインデックス式のプランナ統計情報が維持されます。

[例]

=# CREATE TABLE concur_exprs_tab (c1 int , c2 boolean);
=# INSERT INTO concur_exprs_tab (c1, c2) VALUES (1369652450, FALSE);
=# CREATE UNIQUE INDEX concur_exprs_index_expr
-#   ON concur_exprs_tab ((c1::text COLLATE "C"));
=# ANALYZE concur_exprs_tab;
=# SELECT starelid::regclass, count(*) FROM pg_statistic WHERE starelid IN (
(#   'concur_exprs_index_expr'::regclass)
-#   GROUP BY starelid ORDER BY starelid::regclass::text;
        starelid         | count
-------------------------+-------
 concur_exprs_index_expr |     1
(1 row)
=# REINDEX TABLE CONCURRENTLY concur_exprs_tab;
=# SELECT starelid::regclass, count(*) FROM pg_statistic WHERE starelid IN (
(#   'concur_exprs_index_expr'::regclass)
-#   GROUP BY starelid ORDER BY starelid::regclass::text;
        starelid         | count
-------------------------+-------
 concur_exprs_index_expr |     1
(1 row)

対処方法

ありません。