pg_restore error on function

From: Post Gresql <postgresql(at)taljaren(dot)se>
To: pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: pg_restore error on function
Date: 2022-11-03 14:28:42
Message-ID: 32b7cafd-e649-5478-017d-766036a2afbd@taljaren.se
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hello

I first successfully ran

pg_dump -U postgres -b -E UTF8 -f my_dump --format=custom -n my_schema --no-owner -v my_db

but then

pg_restore --single-transaction -v -U postgres -O -e -d my_other_db my_dump

failed with

pg_restore: connecting to database for restore
pg_restore: creating FUNCTION "my_schema.update_b()"
pg_restore: [archiver (db)] Error while PROCESSING TOC:
pg_restore: [archiver (db)] Error from TOC entry 7142; 1255 8618854 FUNCTION update_b() previous_owner
pg_restore: [archiver (db)] could not execute query: ERROR: schema my_schema" does not exist
Command was: CREATE FUNCTION "my_schema".update_b() RETURNS void
LANGUAGE plpgsql
AS $$
BEGIN
PERFORM pg_advisory_xact_lock(1);

INSERT INTO ...;
END;
$$;

This is PG version 10.19

Is there a solution for this (apart from upgrading to a newer PG version)?

The only workaround I can think of is to dump in plain text and then edit the dump file.

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Adrian Klaver 2022-11-03 14:43:17 Re: pg_restore error on function
Previous Message Ron 2022-11-03 13:10:13 Re: unable to install postgreql 13.4