powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Ошибка при восстановлении из бэкапа
5 сообщений из 5, страница 1 из 1
Ошибка при восстановлении из бэкапа
    #39163224
AsPushkinCbr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго времени.

Проблема: базы нет, есть бэкап. При restore выдает ошибку:
Код: plsql
1.
2.
3.
gbak: ERROR:invalid request BLR at offset 1163
gbak: ERROR:    Input parameter mismatch for procedure CESAR_TEMP
gbak:Exiting before completion due to errors



Сразу первый вопрос: mismatch это несовпадение типов при вызове процедуры, или несовпадение количества объявленных параметров с количеством в вызове?

Со слов админа - вроде как менялось количество параметров. Мое мнение - не факт.

Почитав различные источники пришел к выводу:
ремонтных утилит в FireBird для таких случаев нет. Можно только руками и с гемором.

Можно сравнивать количество объявленных параметров с тем, что вызываются прямо в бэкапе. ( место нашел, список параметров при создании базы из бэкапа написан в логе gbak. Но вот с вызовом неясности: там их гораздо меньше, чем при создании процедуры и как их туда добавлять пока не придумал).

Вижу еще 2 пути:
1. Дебаггером перехватывать ошибку во время работы gbak и смотреть что там. (ну это для другого форума)
2. Найти исходник gbak (он же вроде бы с открытым кодом), найти проверку на список параметров хранимых процедур, отключить, перекомпилить.


Не смейтесь, базу нужно восстановить ВоИмяЧегоБыТоНеСтало, поэтому любые методы катят. Причем сами понимаете, чем скорее, тем быстрее, поэтому ищу наиболее быстрый вариант.

Ваше мнение.

PS и ДА!, Любителям упреков, укоров и наставлений: база не моя. Моя задача - реанимировать
...
Рейтинг: 0 / 0
Ошибка при восстановлении из бэкапа
    #39163228
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AsPushkinCbr,

http://www.ibase.ru/devinfo/db_repair.htm#proc

AsPushkinCbrВижу еще 2 пути:
есть еще третий - ibbackupsurgeon .
...
Рейтинг: 0 / 0
Ошибка при восстановлении из бэкапа
    #39163231
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AsPushkinCbrНайти исходник gbak (он же вроде бы с открытым кодом), найти проверку на список параметров хранимых процедур, отключить, перекомпилить.

не выйдет. Это проверяется движком.
...
Рейтинг: 0 / 0
Ошибка при восстановлении из бэкапа
    #39163236
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AsPushkinCbrСразу первый вопрос: mismatch это несовпадение типов при вызове
процедуры, или несовпадение количества объявленных параметров с количеством в вызове?
Количества.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Ошибка при восстановлении из бэкапа
    #39163244
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AsPushkinCbrбазу нужно восстановить ВоИмяЧегоБыТоНеСтало, поэтому любые методы катят.
Берём исходники Firebird, учимся их собирать
Далее в src/jrd/par.cpp, ищем
Код: plaintext
1.
2.
error(csb, Arg::Gds(input_flag ? isc_prcmismat : isc_prc_out_param_mismatch) <<
				Arg::Str(procedure->prc_name));

их там две штуки.

Меняем error() на warning()
Собираем сервер, ресторим БД.

PS Гарантий не дам...
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Ошибка при восстановлении из бэкапа
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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