проблема с использованием UDF

Ремонт и восстановление баз данных InterBase, Firebird, Yaffil

Модераторы: kdv, Alexey Kovyazin

Ответить
AlexTrump
Сообщения: 9
Зарегистрирован: 05 июн 2008, 16:26

проблема с использованием UDF

Сообщение AlexTrump » 05 июн 2008, 16:33

Проблема вот в чем. IB 5.5
Есть хранимая процедура.
Из нее вызывается UDF-ка(2 входных параметра)
По ошибке вызвал ее без второго параметра.IB все это проглотил-теперь при попытке изменения хранимой процедуры(и не только этой процедуры :(() происходит разрыв соединения. Также все начало безбожно глючить :(
Помогите,очень срочно надо все исправить :(((

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 05 июн 2008, 16:48

Проблема вот в чем. IB 5.5
это уже проблема
http://www.ibase.ru/devinfo/56bugfix.txt
при попытке изменения хранимой процедуры
ты пытаешься вызов udf закомментировать? или как?

AlexTrump
Сообщения: 9
Зарегистрирован: 05 июн 2008, 16:26

Сообщение AlexTrump » 05 июн 2008, 17:00

ты пытаешься вызов udf закомментировать? или как?
Да,пытался и закоментить и по правильному писать-падает и все :(

Declaring a procedure which calls a UDF with
an incorrect number of parameters could crash
the server and cause problems when trying to
alter or drop the procedure.
Да,вот эта самая проблема...
Как она решается-переходом на 5.6?
Эту багу от 5.5 этот переход починит?
Ведь бэкап то тоже не сработал :(((

AlexTrump
Сообщения: 9
Зарегистрирован: 05 июн 2008, 16:26

Сообщение AlexTrump » 05 июн 2008, 17:11

Да,может кто скажет где скачать 5.6,если мне это поможет?
6 и далее бросьба не предлагать-база старая,используются зарезервированные слова от 6-й версии-решил не переходить,чтобы ненароком все не порушить :(

Merlin
Динозавр IB/FB
Сообщения: 1502
Зарегистрирован: 27 окт 2004, 11:44

Сообщение Merlin » 05 июн 2008, 17:46

Если мне не изменяет склероз,

Код: Выделить всё

Update rdb$procedures set rdb$procedure_source=''
Where rdb$procedure_name='ЭТА ПРОЦЕДУРА';
Commit;
Alter Procedure ЭТА ПРОЦЕДУРА As
ПРАВИЛЬНОЕ ТЕЛО
Commit;
должно помочь отцу русской демократии. Только попробуй сначала на копии. Снятой при остановленном сервере. А может там null надо было, а не '', не помню.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 05 июн 2008, 21:33

Да,может кто скажет где скачать 5.6,если мне это поможет?
у тебя 5.5 купленный? если да - дам скачать.

и, кстати, если описание багофикса есть в приведенном мной документе, то это означает что баг исправлен в 5.6.
6 и далее бросьба не предлагать
я тебе даже временно, для исправления проблемы, не предлагаю использовать IB 6. Ты так только метаданные испортишь, и в 5.x не сможешь с этой базой работать. Не говоря о том, что IB 6 это древний отстой.

Merlin
Динозавр IB/FB
Сообщения: 1502
Зарегистрирован: 27 окт 2004, 11:44

Сообщение Merlin » 05 июн 2008, 22:40

kdv писал(а): я тебе даже временно, для исправления проблемы, не предлагаю использовать IB 6.
Тем более, что бессмыссленный чек старого сорца процедуры перед альтером и дропом есть и в ней. По-моему это только в полуторке поправили.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 06 июн 2008, 00:29

гм. и правда. если это оно, и 5.5 лицензионный - скажу как исправить.

Ответить