CftClub.ru
Клуб специалистов ЦФТ-Банк

Ошибка 4061

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Разработка в PL/PLUS. Оптимизация запросов Oracle
Предыдущая тема :: Следующая тема  
Автор Сообщение
Sid
Участник


Вступление в Клуб: 26.08.2014
СообщениеЧт Дек 04, 2014 10:44   Ошибка 4061 Ответить с цитатой
Полезность: Нет оценки
Добрый день!
Поискал по форуму и не нашел. Есть стандартная оракловая ошибка ORA - 04061. Она возникает когда сессия уже вызывавшая процедуру/пакет/функцию вызывает ее второй раз после изменения/компиляции последней. Ошибка вылазит один раз уведомляя пользователя о том, что произошли изменения, второй вызов происходит без проблем.
Проблема заключается в том, что у меня стоит задание по расписанию, которое постоянно работает. Оно многофункциональное. Но после накатов, затрагивающих пакеты, которые вызывает задание оно ломается с ошибкой.
"Поставлено в очередь 04/12/2014 11:54:59.
1. 04/12/2014 11:58:31.Задание уже запущено...
2. 04/12/2014 11:59:06.Задание уже запущено...
3. 04/12/2014 12:00:11.Задание уже запущено..."

Ошибка почему то не информативная, но именно из-за этой проблемы.
Вроде у ЦФТ есть exception, который должен эту ошибку проглатывать.
Если просто так написать exception when others then, то компилятор пишет
when others then
if sqlcode in (-4061,-6508) then raise; end if;
end;
, т.е. как раз эту ошибку он в исключение не вставляет
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеЧт Дек 04, 2014 15:47   Re: Ошибка 4061 Ответить с цитатой
Полезность: Нет оценки
Код:
exception when ::[REPS_DATA].[LIB_EXCEPT].STATE_DISCARD then
dbms_session.reset_package;
raise;
Sid
Участник


Вступление в Клуб: 26.08.2014
СообщениеПт Дек 05, 2014 06:51   Re: Ошибка 4061 Ответить с цитатой
Полезность: Нет оценки
Random пишет:
Код:
exception when ::[REPS_DATA].[LIB_EXCEPT].STATE_DISCARD then
dbms_session.reset_package;
raise;

Такой библиотеки у меня нет, обошел исключением. К сожалению не подошло. Я сейчас вызываю текстовое задание, где в коде написал
declare
errcode4061 exception;
pragma exception_init(errcode4061, -4061); -- Пакет был изменен
begin
... КОД ...
exception when errcode4061 then
dbms_session.reset_package;
end;
Задание просто завершается без ошибки.

P/s/ При ручном вызове операции помогает.
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеПт Дек 05, 2014 12:28   Re: Ошибка 4061 Ответить с цитатой
Полезность: Нет оценки
Sid пишет:
Random пишет:
::[REPS_DATA].[LIB_EXCEPT].STATE_DISCARD

Такой библиотеки у меня нет...


Странно.
Операция существует с версии 14.1 ЦФТ-Банк.

Но, в сущности, там написано именно то, что написали Вы.
Sid
Участник


Вступление в Клуб: 26.08.2014
СообщениеПн Дек 15, 2014 06:43    Ответить с цитатой
Полезность: Нет оценки
Похоже проблема осталась. Неужели никто не сталкивался?

Поставлено в очередь 08/12/2014 11:08:25.
Запущено 08/12/2014 11:08:26. Выполнено 09/12/2014 09:18:54.
Запущено 09/12/2014 09:19:59. Выполнено 10/12/2014 14:33:30.
Запущено 10/12/2014 14:34:31. Выполнено 11/12/2014 15:59:06.
1. 12/12/2014 17:18:37.Задание уже запущено...
2. 12/12/2014 17:19:12.Задание уже запущено...
3. 12/12/2014 17:20:17.Задание уже запущено...
4. 12/12/2014 17:21:52.Задание уже запущено...
5. 12/12/2014 17:23:52.Задание уже запущено...
6. 12/12/2014 17:26:22.Задание уже запущено...
7. 12/12/2014 17:29:23.Задание уже запущено...
8. 12/12/2014 17:32:58.Задание уже запущено...
9. 12/12/2014 17:36:58.Задание уже запущено...
10. 12/12/2014 17:41:29.Задание уже запущено...
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Разработка в PL/PLUS. Оптимизация запросов Oracle Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru