Внесение изменений в хранимые процедуры
Внесение изменений в хранимые процедуры
Уважаемые коллеги!
Мы столкгулись с одной проблемой при переходе от FireBird 1.0 к FireBird 1.5.2 (архитектура CS). Сам по себе переход прошел нормально, все места (интесивность до 80 одновременных соединений) работают и все довольны. Но, если на старом сервере не было проблем с внесением изменений в хранимые процедуры, то теперь любая попытка что-либо изменить в тексте ХП при Commit сопровождается исключением и не исполняется. Подскажите - это теперь штатный режим? Можно ли его обойти. Нам удается вносить необходимые изменения только в локальном режиме. Работаем мы (редактируем ХП) с IBExpert.
Мы столкгулись с одной проблемой при переходе от FireBird 1.0 к FireBird 1.5.2 (архитектура CS). Сам по себе переход прошел нормально, все места (интесивность до 80 одновременных соединений) работают и все довольны. Но, если на старом сервере не было проблем с внесением изменений в хранимые процедуры, то теперь любая попытка что-либо изменить в тексте ХП при Commit сопровождается исключением и не исполняется. Подскажите - это теперь штатный режим? Можно ли его обойти. Нам удается вносить необходимые изменения только в локальном режиме. Работаем мы (редактируем ХП) с IBExpert.
Re: Внесение изменений в хранимые процедуры
Исключение вполне традиционное для Commit ситуаций-
lock conflict on no wait transaction
unsucceful update object <имя изменяемой ХП> is in use
lock conflict on no wait transaction
unsucceful update object <имя изменяемой ХП> is in use
Re: Внесение изменений в хранимые процедуры
Потому, что вы перешли с SS на CSSAMZ писал(а):Мы столкгулись с одной проблемой при переходе от FireBird 1.0 к FireBird 1.5.2 (архитектура CS)...
теперь любая попытка что-либо изменить в тексте ХП при Commit сопровождается исключением и не исполняется
Re: Внесение изменений в хранимые процедуры
Правильно ли я Вас понял, что для CS такое поведение нормальное и, если мы хотим работать по старому, то надо перейти на SS. Другого решения просто нет.
Re: Внесение изменений в хранимые процедуры
В документации четко указано, что изменения метаданных нужно производить в монопольном режиме. В SS общий кеш метаданных, в CS - раздельный (у каждого процесса свой), поэтому CS ведёт себя несколько по-другому.SAMZ писал(а):Правильно ли я Вас понял, что для CS такое поведение нормальное и, если мы хотим работать по старому, то надо перейти на SS. Другого решения просто нет.
Советую перечитать раздел 'altering procedures in use' из документации к IB
Насчёт редактрования в IBE - это действительно могут быть побочные эффекты. Попробуйте воспользоваться кнопкой 'Reconnect' и повторить сохранение процедуры
Re: Внесение изменений в хранимые процедуры
Не, не помогает. Я обычно поступаю так: если я какую процедуру редактирую в Эксперте, то, получивши procedure in use, тут же, ничего в нём даже не закрывая, copy-paste в свой любимый WISQL (диалект-то первый, так что можно) и готово. Эксперт постоянно сам себе кое на что наступает уверенно.hvlad писал(а): Насчёт редактрования в IBE - это действительно могут быть побочные эффекты. Попробуйте воспользоваться кнопкой 'Reconnect' и повторить сохранение процедуры