Замечания по выпуску


|17.3 Глава 2. Troubleshooting the DB2 Universal Database Server (Диагностика ошибок сервера DB2 Universal Database)

| | |

|В разделе "Locking and Deadlocks" (Блокировка и тупиковые ситуации) в |подразделе "Applications Slow or Appear to Hang" (Программа работает |медленно или зависает) описание под заголовком "Lock waits or deadlocks are |not caused by next key locking" надо заменить на :

|Блокировка следующего ключа гарантирует уровень изоляции |Многократное чтение (RR), автоматически блокируя следующий ключ для всех |операторов INSERT и DELETE и следующее большее значение ключа для набора |результатов для операторов SELECT. Для операторов UPDATE, которые |изменяют части ключей в индексе, исходное значение ключа удаляется, а новое |значение - вставляется. Блокировка следующего значения при этом |производится и для вставки ключа, и для удаления ключа. Это требуется |для обеспечения стандартного многократного чтения ANSI и SQL92 и используется |в DB2 по умолчанию.

|Проверьте информацию снимка для программы. Если есть подозрение, что |проблема связана с блокировкой следующего ключа, можно включить переменную |реестра DB2_RR_TO_RS, если никакие программы не полагаются на эффекты |многократного чтения(RR) и если при просмотре приемлем пропуск непринятых |удалений.

|Если переменная DB2_RR_TO_RS включена, поведение RR при просмотре не может |быть гарантировано, поскольку при вставке и удалении ключей индекса блокировка |следующего ключа не выполняется. На таблицы каталогов эта опция не |влияет.

|Другой эффект включения переменной DB2_RR_TO_RS - пропуск при просмотре |удаленных, но непринятых строк, даже если эти строки могут быть отобраны для |просмотра.

|Рассмотрим, например, ситуацию, когда транзакция A удаляет строку с |column1=10, а транзакция B выполняет просмотр строк, для которых column1>8 |и column1<12.

|Если DB2_RR_TO_RS выключена, транзакция B будет ждать принятия или отката |транзакции A. В случае отката строка с column1=10 будет включена в |набор результатов запроса транзакции B.

|Если DB2_RR_TO_RS включена, транзакция B не будет ждать принятия или отката |транзакции A. Она немедленно получит результаты запроса без удаляемой |строки.

|Не используйте эту опцию, если вам требуется уровень изоляции Многократное |чтение (RR) стандарта ANSI и SQL92 или если вы не хотите при просмотре |пропускать удаляемые строки до принятия удаления.


[ Начало страницы | Страница назад | Страница вперед | Содержание | Индекс ]