powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как заставить pg_restore вернуть код завершения 0 ?
5 сообщений из 5, страница 1 из 1
Как заставить pg_restore вернуть код завершения 0 ?
    #39541155
Добрый день.

pg_restore восстанавливает БД, но при востановлении жалуется на т очто plpgsql уже существует.

И соответсвенно выдает код возврата 1 а не 0.


Как сделать чтобы pg_restore проигнорировал эту ошибку и вернул код возврата 0 ?
...
Рейтинг: 0 / 0
Как заставить pg_restore вернуть код завершения 0 ?
    #39541554
jan2ary
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вторая линия жизни,

Заставить можно, завернув pg_restore в свой скрипт и там анализировать код возврата. Если ошибка на plpgsql, то ингорировать и возвращать 0.
Или решать основную проблему. Можно перед восстановлением в новую чистую базу сделать в ней DROP LANGUAGE. Или создавать новую БД из темплейта template0.
...
Рейтинг: 0 / 0
Как заставить pg_restore вернуть код завершения 0 ?
    #39541612
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вторая линия жизниДобрый день.

pg_restore восстанавливает БД, но при востановлении жалуется на т очто plpgsql уже существует.

И соответсвенно выдает код возврата 1 а не 0.


Как сделать чтобы pg_restore проигнорировал эту ошибку и вернул код возврата 0 ?

Я бы для начала разобрался почему эта ошибка возникает.
Так как в нормальной работе ее не возникает.
Я знаю только 1 вариант - вы делали pg_dump на старой версии базы и старым pg_dump а восстанавливаете в новую версию базы и новым pg_dump.

Для начала приведите версии используемых pg_dump/pg_restore и самих баз.

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
Как заставить pg_restore вернуть код завершения 0 ?
    #39541661
Maxim BogukВторая линия жизниДобрый день.

pg_restore восстанавливает БД, но при востановлении жалуется на т очто plpgsql уже существует.

И соответсвенно выдает код возврата 1 а не 0.


Как сделать чтобы pg_restore проигнорировал эту ошибку и вернул код возврата 0 ?

Я бы для начала разобрался почему эта ошибка возникает.
Так как в нормальной работе ее не возникает.
Я знаю только 1 вариант - вы делали pg_dump на старой версии базы и старым pg_dump а восстанавливаете в новую версию базы и новым pg_dump.

Для начала приведите версии используемых pg_dump/pg_restore и самих баз.

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru


Так и было.

дамп 8.4
затем он восстанавливается на 9.4


А скажите, как этой ошибки избежать?
...
Рейтинг: 0 / 0
Как заставить pg_restore вернуть код завершения 0 ?
    #39541778
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вторая линия жизниMaxim Bogukпропущено...


Я бы для начала разобрался почему эта ошибка возникает.
Так как в нормальной работе ее не возникает.
Я знаю только 1 вариант - вы делали pg_dump на старой версии базы и старым pg_dump а восстанавливаете в новую версию базы и новым pg_dump.

Для начала приведите версии используемых pg_dump/pg_restore и самих баз.

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru


Так и было.

дамп 8.4
затем он восстанавливается на 9.4


А скажите, как этой ошибки избежать?

Для начала попробовать снимать dump используя pg_dump от 9.4
Если не поможет - решить что так делать не надо и сделать одинаковую версию базы кругом.

PS: вообще 8.4->9.4 очень серьезная разница чтоб делать такие переливки регулярно. Какую задачу вы этим решаете?

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как заставить pg_restore вернуть код завершения 0 ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]