2009-08-05 7 views
0

У меня проблема с прерывистой процедурой при вызове хранимой процедуры iSeries (состоящей из различных программ RPG CL &). Ошибка:Ошибка управления целями при вызове процедуры iSeries

Commitment definition *N not valid for open of QAOSSI12 
    Error occurred while opening file QAOSSI12. 

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

Я знаю, что информация неопределенная, но любые идеи оцениваются !!

+0

Как вы проводите опрос? С внешней стороны (например, вызов JDBC) или изнутри (например, прямой вызов из процедуры). В более позднем случае проверьте, используете ли вы именованные группы активации. Как пишет Дэнни Т, проверьте свой объем. – robertnl

ответ

0

Если это ошибка CPF4326, текст сообщения дает следующие возможности:

  • Член QAOSSI12 был открыт для контроля обязательств при определении обязательств * N не был активен.
  • Отклоненные изменения не принимаются для члена QAOSSI12 для определения обязательства, отличного от * N.
  • Вызывающая программа использует определение обязательств * N, которое имеет область действия * ACTGRP, в то время как программа указана для открытия файла с использованием ascope * JOB.

Возможны ли эти ситуации в вашем случае?

0

Мы получаем CPF4326, и решение, которое, кажется, работает, заключается в том, чтобы добавить «изоляцию транзакции = нет» к нашему URL-адресу jdbc. Мы все равно не пытаемся использовать транзакции, поэтому нет никакой пользы от их включения. Мы также подозрительно, что что-то в iBATIS пытается отменить транзакцию при возникновении ошибки, хотя мы не делаем ничего конкретного в отношении контроля обязательств.

Смежные вопросы