Partitioned index can be not dumped

Поиск
Список
Период
Сортировка
От Alexander Pyhalov
Тема Partitioned index can be not dumped
Дата
Msg-id 704fb6fb99ec9864a4dbeda2478337d2@postgrespro.ru
обсуждение исходный текст
Ответы Re: Partitioned index can be not dumped  (Alexander Pyhalov <a.pyhalov@postgrespro.ru>)
Re: Partitioned index can be not dumped  (Álvaro Herrera <alvherre@alvh.no-ip.org>)
Re: Partitioned index can be not dumped  (Álvaro Herrera <alvherre@alvh.no-ip.org>)
Список pgsql-hackers
Hi.

I've seen the following effect on PostgreSQL 14 stable branch.
Index, created on partitioned table, disappears from pg_dump or psql \d 
output.
This seems to begin after analyze. Partitoned relation relhasindex 
pg_class field suddenly becomes false.

The issue happens after

commit 0e69f705cc1a3df273b38c9883fb5765991e04fe (HEAD, refs/bisect/bad)
Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
Date:   Fri Apr 9 11:29:08 2021 -0400

     Set pg_class.reltuples for partitioned tables

     When commit 0827e8af70f4 added auto-analyze support for partitioned
     tables, it included code to obtain reltuples for the partitioned 
table
     as a number of catalog accesses to read pg_class.reltuples for each
     partition.  That's not only very inefficient, but also problematic
     because autovacuum doesn't hold any locks on any of those tables -- 
and
     doesn't want to.  Replace that code with a read of 
pg_class.reltuples
     for the partitioned table, and make sure ANALYZE and TRUNCATE 
properly
     maintain that value.

     I found no code that would be affected by the change of relpages 
from
     zero to non-zero for partitioned tables, and no other code that 
should
     be maintaining it, but if there is, hopefully it'll be an easy fix.

     Per buildfarm.

     Author: Álvaro Herrera <alvherre@alvh.no-ip.org>
     Reviewed-by: Zhihong Yu <zyu@yugabyte.com>

It seems that in this commit we unconditionally overwrite this data with 
0.
I've tried to fix it by getting this information when inh is true and 
ignoring nindexes when inh is not true.

-- 
Best regards,
Alexander Pyhalov,
Postgres Professional
Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: vignesh C
Дата:
Сообщение: Re: Enhanced error message to include hint messages for redundant options error
Следующее
От: Bharath Rupireddy
Дата:
Сообщение: Re: postgres_fdw - should we tighten up batch_size, fetch_size options against non-numeric values?