Wells Oliver <wells.oliver@gmail.com> writes:
> Odd one here, but after restoring a database in parallel, I notice a few
> mat views are unmaterialized, e.g.
> ...
> The reason being is that vwm_ytd_p uses a function age() which queries from
> vwm_info, which has not yet been materialized. In fact, it is being
> materialized in parallel in another job, so not yet available.
Right.
> Anything to do here?
Not much we can do today. User-defined functions are black boxes,
so pg_dump can't see what their innards might reference.
v14 will have the ability to declare SQL functions in something
closer to SQL-spec syntax, in which the body of the function will
be parsed at definition time. With that style of function, pg_dump
*does* see the dependencies so this sort of thing should work.
That approach is not without some downsides, but it sounds like it'd
improve your case here.
regards, tom lane