Re: pg_restore depending on user functions

Дмитрий Иванов <firstdismay@gmail.com>

From: Дмитрий Иванов <firstdismay@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: pgsql-bugs@lists.postgresql.org
Date: 2021-11-19T04:45:45Z
Lists: pgsql-bugs, pgsql-general

Attachments

Done.
I hope this helps you.
Basic test:
step 1:
Create a test base using the create_test.sql script (I have no errors)
Step 2:
Create a dump of the test base. My output is test.sql (I have no errors)
step 3.
Try to deploy the test.sql dump (it started with errors).
Lost views: int_a_ext, va_ext
Lost functions: a_ext_by_id(bigint);

чт, 18 нояб. 2021 г. в 20:32, Tom Lane <tgl@sss.pgh.pa.us>:

> =?UTF-8?B?0JTQvNC40YLRgNC40Lkg0JjQstCw0L3QvtCy?= <firstdismay@gmail.com>
> writes:
> > I only made a bpd schema, so I added an artificial cast, but in fact this
> > is almost the end of the general base script:
> > CREATE CAST (bpd.vclass_prop AS bpd.cclass_prop) WITH FUNCTION
> > bpd.int_cast_vclass_prop_to_cclass_prop(bpd.vclass_prop);
>
> I'm only going to say this one more time, because I'm getting really
> tired of looping around on this: please send a file that you have
> tested to be loadable.  This one is missing at least three casts
> and several functions:
>
> psql:bpd_tl3.sql:2274: ERROR:  cannot cast type bpd.vdoc_category to
> bpd.cdoc_ca
> tegory
> psql:bpd_tl3.sql:2287: ERROR:  cannot cast type bpd.vdoc_file to
> bpd.cdoc_file
> psql:bpd_tl3.sql:3110: ERROR:  cannot cast type bpd.vobject_prop to
> bpd.cobject_
> prop
> psql:bpd_tl3.sql:5388: ERROR:  function bpd.cfg_procargs(oid) does not
> exist
> psql:bpd_tl3.sql:5654: ERROR:  function bpd.cfg_tblcol2(oid) does not exist
> psql:bpd_tl3.sql:6189: ERROR:  function
> bpd.int_cast_vclass_prop_to_cclass_prop(
> bpd.vclass_prop_snapshot) does not exist
> psql:bpd_tl3.sql:9815: ERROR:  function
> bpd.int_class_name_format_check(bigint)
> does not exist
>
> I might've missed some in the cascade of follow-on errors, but those
> objects are certainly not defined in this script.
>
>                         regards, tom lane
>

Commits

  1. Adjust pg_dump's priority ordering for casts.