Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
13.11.2020, 20:16
|
|||
---|---|---|---|
Параллелизм внутри курсора |
|||
#18+
Подскажите пожалуйста. Стоит задача обновить в таблице все значения в текстовых полях с null на пустоту ''. Решил использовать динамический sql. Получаю список всех текстовых колонок в таблице, и пробегаюсь курсором по этому списку , внутри курсора делая Код: sql 1. 2. 3.
но периодически возникают deadlock блокировки по которым видно, что одновременно идет update разных колонок в одной таблице, чего (по моей логике) быть не должно. Внимание вопрос, возможно ли что внутри курсора идет выполнение не последовательно, а параллельно и если да, то как этого избежать? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2020, 20:19
|
|||
---|---|---|---|
|
|||
Параллелизм внутри курсора |
|||
#18+
Стейтменты в одной сессии всегда выполняются последовательно. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2020, 20:32
|
|||
---|---|---|---|
Параллелизм внутри курсора |
|||
#18+
Гавриленко Сергей Алексеевич, спасибо, буду искать проблему в другом месте ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.11.2020, 00:37
|
|||
---|---|---|---|
|
|||
Параллелизм внутри курсора |
|||
#18+
lex452, если Вы обновляете ту же таблицу, что и просматриваете, то такое возможно. Откройте профайлер и запищите трассу событий deadlock c XML графом, увидите - откуда берутся взаимоблокировки. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
14.11.2020, 11:23
|
|||
---|---|---|---|
Параллелизм внутри курсора |
|||
#18+
Владислав Колосов lex452, если Вы обновляете ту же таблицу, что и просматриваете, то такое возможно. Откройте профайлер и запищите трассу событий deadlock c XML графом, увидите - откуда берутся взаимоблокировки. Обновление идет в отдельном потоке, но теоретически эту таблицу могут просматривать в это же время правда с хинтом (nolock). А где связь между тем что одно обновление блокирует другое и одновременным просмотром, не понимаю? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=46&tablet=1&tid=1685407]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 120ms |
0 / 0 |