Amit's original patch had an assertion failure in extract_autovac_opts(). His patch adds partitioned tables in the list of tables to be auto-analyzed. But there's an assertion in extract_autovac_opts(), which did not consider partitioned tables. When a partitioned table is created, the assertion trips in autovacuum worker and resets the cluster, restarting all the backends. I have updated Robert's patch with the assertion fixed.
On Tue, Feb 28, 2017 at 8:50 AM, Robert Haas <robertmh...@gmail.com> wrote: > On Thu, Feb 23, 2017 at 11:19 AM, Amit Langote > <langote_amit...@lab.ntt.co.jp> wrote: >> Thanks for the review. > > In 0001, the documentation which you are patching has a section for > limitations that apply only to both partitioning and constraint > exclusion, and another for limitations that apply only to constraint > exclusion. Surely the patch should be moving a limitation that will > no longer apply to partitioning from the first section to the second > section, rather than leaving it in the section for limitations that > apply to both systems and just adding a note that say "this doesn't > apply to partitioning any more". > > In acquire_inherited_sample_rows(), instead of inserting a whole > stanza of logic just above the existing dispatch on relkind, I think > we can get by with a very slightly update to what's already there. > > You can't use the result of a & b as a bool. You need to write (a & > b) != 0, because the bool should always use 1 for true and 0 for > false; it should not set some higher-numbered bit. > > The changes to autovacuum.c look useless, because > relation_needs_vacanalyze() will presumably never fire for a table > with no tuples of its own. > > Updated patch with those changes and a few cosmetic tweaks attached. > > -- > Robert Haas > EnterpriseDB: http://www.enterprisedb.com > The Enterprise PostgreSQL Company -- Best Wishes, Ashutosh Bapat EnterpriseDB Corporation The Postgres Database Company
avoid-useless-partition-ops_v2.patch
Description: Binary data
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers