9.0: plpgsql eror when restoring a database as a non superuser
| От | stefan |
|---|---|
| Тема | 9.0: plpgsql eror when restoring a database as a non superuser |
| Дата | |
| Msg-id | j7u1df$ul2$1@dough.gmane.org обсуждение исходный текст |
| Ответы |
Re: 9.0: plpgsql eror when restoring a database as a non superuser
|
| Список | pgsql-general |
Hi,
we run a setup with multiple non superusers who have the option of
restoring their databases in a semi-automated fashion.
In 9.0, we run into the following error:
pg_restore: [archiver (db)] Error while PROCESSING TOC:
pg_restore: [archiver (db)] Error from TOC entry 1038; 2612 11574
PROCEDURAL LANGUAGE plpgsql postgres
pg_restore: [archiver (db)] could not execute query: ERROR: must be
owner of language plpgsql
Command was: CREATE OR REPLACE PROCEDURAL LANGUAGE plpgsql;
Pg_restore thus returns an error value, causing trouble in our procedures.
In its simplest form, the error can be reproduced as follows:
createdb test
pg_dump -Fc test > test.psql
pg_restore -d test < test.psql
The database is created on the same postgresql server as on which it is
restored. It is therefore no upgrade issue, as in this thread:
http://archives.postgresql.org/pgsql-general/2010-12/msg00499.php
Is there a way that this error can be prevented when restoring a
database as a non superuser?
I am already aware of a workaround using -l and -L, but I would strongly
prefer the elegance of letting the bare psql tools do their job properly.
Cheers,
Stefan.
В списке pgsql-general по дате отправления: