Hi, On Wed, Feb 22, 2017 at 05:24:49PM -0600, Jim Nasby wrote: > On 2/22/17 12:29 PM, Peter Eisentraut wrote: > >On 2/22/17 10:14, Jim Nasby wrote: > >>CREATE MATERIALIZED VIEW tmv AS SELECT * FROM pg_subscription; > >>SELECT 0 > >> > >>IOW, you can create matviews that depend on any other > >>table/view/matview, but right now if the matview includes certain items > >>it will mysteriously end up empty post-restore. > > > >Yes, by that logic matview refresh should always be last.
Glad to hear - I vaguely remember this coming up in a different thread some time ago, and I though you (Peter) had reservations about moving things past after the ACL step, but I couldn't find this thread now anymore, only https://www.postgresql.org/message-id/11166.1424357659%40sss.pgh.pa.us > Patches for head attached. Yay. > diff --git a/src/bin/pg_dump/pg_dump_sort.c b/src/bin/pg_dump/pg_dump_sort.c > index ea643397ba..708a47f3cb 100644 > --- a/src/bin/pg_dump/pg_dump_sort.c > +++ b/src/bin/pg_dump/pg_dump_sort.c > @@ -26,6 +26,9 @@ static const char *modulename = gettext_noop("sorter"); > * Sort priority for database object types. > * Objects are sorted by type, and within a type by name. > * > + * Because materialized views can potentially reference system views, > + * DO_REFRESH_MATVIEW should always be the last thing on the list. > + * I think this comment is overly specific: any materialized view that references a view or table in a different schema (pg_catalog or not) will likely not refresh on pg_restore AIUI, so singling out system views doesn't look right to me. Michael -- Michael Banck Projektleiter / Senior Berater Tel.: +49 2166 9901-171 Fax: +49 2166 9901-100 Email: michael.ba...@credativ.de credativ GmbH, HRB Mönchengladbach 12080 USt-ID-Nummer: DE204566209 Trompeterallee 108, 41189 Mönchengladbach Geschäftsführung: Dr. Michael Meskes, Jörg Folz, Sascha Heuer -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers