Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / IBM DB2, WebSphere, IMS, U2, etc Новый топик    Ответить
 Refresh table and deadlocks  [new]
Dmitry Y.
Member

Откуда: Москва
Сообщений: 120
Имеем MQT таблицу data initially deferred refresh deferred.
Открываю на нее read-only cursor в одной задаче, а во второй делаю refresh table на эту таблицу. Вторая задача повисает пока не закроется курсор или не вылетит deadlock. Никакие isolation levels не спасают. А курсор иногда держат долго.


Any ideas?
5 июн 06, 16:02    [2741752]     Ответить | Цитировать Сообщить модератору
 Re: Refresh table and deadlocks  [new]
warIord
Member

Откуда:
Сообщений: 207
А 'ГРЯЗНЫЙ' КУРСОР <WITH UR> ВЛЕТАЕТ В БЛОКИРОВКУ?
5 июн 06, 16:21    [2741866]     Ответить | Цитировать Сообщить модератору
 Re: Refresh table and deadlocks  [new]
Dmitry Y.
Member

Откуда: Москва
Сообщений: 120
К сожалению да :(

курсор FOR READ ONLY WITH UR
5 июн 06, 16:39    [2741989]     Ответить | Цитировать Сообщить модератору
 Re: Refresh table and deadlocks  [new]
Mark Barinstein
Member

Откуда: Москва
Сообщений: 4946
refresh table
даже инкрементальный накладывает z-lock (это круче, чем эксклюзивная) на эту mqt.
Вы не обойдете ее никаким уровнем изоляции.
Dmitry Y.
А курсор иногда держат долго.

Каленым железом выжигать...
Или это требования системы такие, курсор подолгу держать открытым?
5 июн 06, 16:54    [2742086]     Ответить | Цитировать Сообщить модератору
 Re: Refresh table and deadlocks  [new]
Dmitry Y.
Member

Откуда: Москва
Сообщений: 120
Mark Barinstein
refresh table
даже инкрементальный накладывает z-lock (это круче, чем эксклюзивная) на эту mqt.
Вы не обойдете ее никаким уровнем изоляции.

Печально. Придется переходить на refresh immediate = тормоза на insert/update/delete.

Mark Barinstein

Dmitry Y.
А курсор иногда держат долго.

Каленым железом выжигать...
Или это требования системы такие, курсор подолгу держать открытым?

К сожалению.
5 июн 06, 17:14    [2742223]     Ответить | Цитировать Сообщить модератору
 Re: Refresh table and deadlocks  [new]
Dmitry Y.
Member

Откуда: Москва
Сообщений: 120
Придумал. Перекидываю данные в DECLARE GLOBAL TEMPORARY TABLE. Там пусть открывают курсоры сколько хотят и refresh table на основную таблицу теперь можно делать. :)
27 июн 06, 09:07    [2814933]     Ответить | Цитировать Сообщить модератору
Все форумы / IBM DB2, WebSphere, IMS, U2, etc Ответить