Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Блокировка LCK_M_S  [new]
assmsk
Member

Откуда:
Сообщений: 169
Всем привет столкнулся с такой проблемой, не могу понять причину блокировки.

Пользователь пишет простой запрос - SELECT * FROM TABLE_TEST.

В таблице мало данных, 300 тысяч строк , 10 колонок. Для сервера ни о чем.
Но этот запрос накладывает блокировки на все запросы пользователей которые выполняются в контексте той бд в которой находится таблица TABLE_TEST. У всех сессий одна и та же блокировка LCK_M_S. При том запрос уже выполнен, но блокировки висят до тех пор пока не кильнешь сессию. Не пойму почему такое может происходить
17 окт 19, 15:43    [21996672]     Ответить | Цитировать Сообщить модератору
 Re: Блокировка LCK_M_S  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
блокировки накладываются на таблицы/страницы/ключи/строки,
но никак не на сессии/запросы.

автор
У всех сессий одна и та же блокировка LCK_M_S

если выполняются какие-то селекты на Read Committed,
то конечно накладывается S на строки читаемой таблицы,
чем вы недовольны?
17 окт 19, 16:07    [21996702]     Ответить | Цитировать Сообщить модератору
 Re: Блокировка LCK_M_S  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 4378
Yasha123,

А если таблицу положить в readonly партицию, что-то измениться?
17 окт 19, 16:31    [21996732]     Ответить | Цитировать Сообщить модератору
 Re: Блокировка LCK_M_S  [new]
assmsk
Member

Откуда:
Сообщений: 169
Разобрался, в базе был неадекватный триггер, который лочил все системные таблицы
17 окт 19, 16:49    [21996745]     Ответить | Цитировать Сообщить модератору
 Re: Блокировка LCK_M_S  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
a_voronin
А если таблицу положить в readonly партицию, что-то измениться?

у меня на 2016-ом ничего не поменялось.
если всю базу сделать ридонли, то да, на таблицу IS и все
17 окт 19, 18:11    [21996836]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить