powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASA 8 - 9.02.2542 Invalid Statement Help!
9 сообщений из 9, страница 1 из 1
ASA 8 - 9.02.2542 Invalid Statement Help!
    #33190204
AVGritsenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В последнее время сильно достает проблема:
периодически база отказывается работать, выдавая сообщения с контекстом
Invalid Statement в ответ на все (или многие) запросы.

Помогает перезагрузка сервера.

Однажды удалось локализовать проблему, те найти конкретную процедуру
которая исполнялась нормально 1 раз после рестарта сервера, второй раз выдает ошибку.

Ничего криминального
Unload
load
между базами через файлы.

Оказалось что помогает также перезапись процедуры.
Проблему решили тупо - автоматической перезаписью перед каждым исполнением.

Теперь проблема менее очевидна. Нечто вызывает этот сбой (той программы может уже и не быть вообще) после чего практически все update не работают с указанной диагностикой.

Происходит все это на windows server 2000 разных изданий.

Что делать - то ?
На новые версии надежда слабая - и там есть свежие проблемы
например create index на временной табле с опцией on commit delete rows очищает ее (оно конечно привели в соответсвтвие мануалу но раньше то этого не было! - ищи теперь где стрельнет)

МБ Кто знает что провоцирует это безобразие?
...
Рейтинг: 0 / 0
ASA 8 - 9.02.2542 Invalid Statement Help!
    #33190356
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где именно выдается ошибка? На клиента или в окно сервера? Отсоединить всех клиентов, и подключиться заново помогает?
Закрывать транзакцию через rollback пробовали?
Может у вас идут вложеные вызовы процедур? Оно иногда глючило с кешированием скомпилированных процедур на седьмой-восьмой версии.
Можно еще попробовать менять размер доступного кэша.
...
Рейтинг: 0 / 0
ASA 8 - 9.02.2542 Invalid Statement Help!
    #33192472
AVGritsenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Версия 9.02.2542

Вложенных вызовов процедур сколько угодно но
конкретно например, может отрабатывать с ошибкой такой триггер

ALTER TRIGGER "k_mvar_upd_journal"
after update of "value" order 99 on "DBA"."mvar" referencing old as old_val new as new_val for each row
BEGIN
if (isnull(new_val."value", '')<>isnull(old_val."value", ''))
then
insert into journal (table_name, field_name, new_value, oper_type, date_time, id_string, "cuser")
values ('mvar', 'value', new_val."value", 2, now(), new_val.codmvar, @in_cuser);
end if;
END

При этом единовременно может не работать и все остальное
Отсоединять не пробовал
...
Рейтинг: 0 / 0
ASA 8 - 9.02.2542 Invalid Statement Help!
    #33192504
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
О! @in_cuser, это ж собственная глобальная переменная как я понимаю? Может она по каким-то причинам в этот момент не существует? Она существовала в момент первого срабатывания триггера, сервер скомпилировал триггер в кеш с учетом существующей переменной. Потом что-то произошло, переменная исчезла и теперь триггер просто обязан падать с указаной ошибкой. А вот если переменная была убита и создана заново, вот тут я честно говоря не уверен, триггер может подхватить новую одноименную переменную, а может и не сможет....
В общем, я в первую очередь попробовал бы избавится от использования внешних по отношению к триггеру переменных.
...
Рейтинг: 0 / 0
ASA 8 - 9.02.2542 Invalid Statement Help!
    #33192896
L0cat0r
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сталкивался со следующим 9.0.2.3137 :

была таблица с полем change_time datetime;
которое before insert,update тригер выставлял в now().
из централа убиваем поле, после этого добавляем еще несколько
естественно NULL (есть немножко данных), и опять добавляем тоже поле.
теперь пытаюсь ручками поставить нужные данные -
имею : variable change_time exists. (в работе тригера)
убиваю статистику по таблице - не помогает.
пробую тоже из isqlс - опять ошибка.
полностью выгружаем централ, isqlс.
из isqlс конектимся - 80% update проходит, но пару раз пришлось и сервер рестартовать.

при работе c 8,9 на 7(3.2) централе такого небыло.
правда в 9-ке 3 централом и тригеров не поправишь (процедуры пока можно)
-
в результате работаю через isqlc в связке с MultiEdit, а в централом пользуюсь 99% для просмотра.

Удачи !
...
Рейтинг: 0 / 0
ASA 8 - 9.02.2542 Invalid Statement Help!
    #33192924
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L0cat0r, а чем было обусловлено использование тригера вместо default timestamp на поле? осталось со старого проекта?
...
Рейтинг: 0 / 0
ASA 8 - 9.02.2542 Invalid Statement Help!
    #33194320
L0cat0r
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Рыжий КотL0cat0r, а чем было обусловлено использование тригера вместо default timestamp на поле? осталось со старого проекта?

именно так (еще с 5.5.05) - все сразу не перепишешь ...
...
Рейтинг: 0 / 0
ASA 8 - 9.02.2542 Invalid Statement Help!
    #33195216
AVGritsenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Переменные здесь не причем - они всегда создаются при коннекте
и слишком широко используются чтобы отрезать.

А до этого стабильно сыпалась процедура где никаких переменных не было

А вот когда-то например налетал на следущее ставлю Set Aydit on и аварийное завершение для сервера.

Так что вопрос собственно в том, нет ли какой опции или криминальной
команды глобально провоцирующей этот самый Invalid Statement

Я это для себя понимаю так что у сервера крыша едет и скомпилированные ранее процедуры и триггеры более не работают, НО В ЧЕМ ПРИЧИНА -ТО?
...
Рейтинг: 0 / 0
ASA 8 - 9.02.2542 Invalid Statement Help!
    #33195267
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Крыша едет, в этом и есть причина :)
Поиграйся ключами -c, -cl, -ch, -cw сервера. Может помочь.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASA 8 - 9.02.2542 Invalid Statement Help!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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