Мэйнфрейм DB2: queryTimeout не работает с SqlTransactionRollbackException: SQLCODE=-911, SQLSTATE=40001

Мы видели это следующее исключение из мэйнфрейма DB2. У нас есть CallableStatement.querytimeout, но в этом случае он действительно не работает. Какие-либо предложения? Благодарю.

Ошибка SQL DB2: SQLCODE=-911, SQLSTATE=40001, SQLERRMC=00C9008E;00000801;NULLID.SYSSTAT.5359534C564C3031, DRIVER=3.61.109; Вложенным исключением является com.ibm.db2.jcc.am.SqlTransactionRollbackException: ошибка SQL DB2: SQLCODE = -911, SQLSTATE = 40001, SQLERRMC = 00C9008E; 00000801; NULLID.SYSSTAT.5359534C564C3031, DRIVER = 3.61.109

То же самое относится и к следующему исключению. Тайм-аут запроса не работает.

вложенное исключение - com.ibm.db2.jcc.am.SqlException: НЕУДАЧНОЕ ИСПОЛНЕНИЕ, ВЫЗВАННОЕ НЕДОСТУПНЫМ РЕСУРСОМ. ПРИЧИНА 00E30083, ТИП РЕСУРСА 00000802, И НАЗВАНИЕ РЕСУРСА BINDLOCK

1 ответ

Время ожидания ожидания блокировки (от BINDLOCK01 до 20).

Убедитесь, что таблица, которую вы пытаетесь загрузить, не заблокирована другим продолжительным заданием, выполняющим запрос на обновление / вставку / удаление.

Центр знаний IBM предлагает по возможности добавлять частые операции COMMIT.

Toad World предлагает несколько дополнительных стратегий для оптимизации времени блокировки:

Рекомендация: ACQUIRE(USE) и RELEASE(DEALLOCATE) обеспечивают хороший параллелизм при использовании блокировки страниц или строк и максимизируют производительность.

Чтобы исключительные блокировки были как можно более короткими, рекомендуется сгруппировать операторы INSERT, UPDATE и DELETE вместе в программе на языке хоста, за которой следует COMMIT. Если эти операторы SQL перемежаются с кодом основного языка, блокировки сохраняются при выполнении кода основного языка.

В крайнем случае, если вы не хотите оптимизировать свой запрос и предположить, что он не тупиковый, вы можете отключить тайм-ауты блокировки:

В DB2 для *NIX/Windows измените параметр 'LOCKTIMEOUT' на '-1'. (Не уверен, что это за z/OS, или возможные последствия.)

Добро пожаловать в стек переполнения.

Другие вопросы по тегам