|
Конфликт блокировок на SQL | ☑ | ||
---|---|---|---|---|
0
Dooro
02.10.18
✎
09:22
|
База на SQL сервере , стоят РЕСПОСы для торговой сети. Где то с середины лета начались конфликты блокирововок. Может подскажите в какую сторону рыть?
|
|||
1
Мандалай
02.10.18
✎
09:31
|
sql.ru
|
|||
2
scanduta
02.10.18
✎
09:32
|
Ну анализируй ожидания на блокировках. Какими запросами образуется и почему.
|
|||
3
Мандалай
02.10.18
✎
09:39
|
Ну или Технологический Журнал настрой, может помочь.
На ИТС есть подробное описание настройки и принципа работы. |
|||
4
Мистикан
02.10.18
✎
09:46
|
оперативно:
С помощью консоли кластера серверов. Показывает Кто кого заблокировал, длительность блокировки, гранулярность. С помощью монитора активности. Показывает кто кого заблокировал (id сеансов),какой ресурс ,если конфигурация в автоматическом режиме, то можно увидеть и текст запроса на языке SQL, гранулярность, режим(тип блокировки). И неоперативно SQL profiler. С помощью фильтра lock acquired> 1мс; (ресурс, длительность, режим,гранулярность, id кого забокировали. |
|||
5
Dooro
02.10.18
✎
10:04
|
https://fex.net/411658612621
Вот скриншот. Если есть мысли , подскажите. |
|||
6
Vadim_37
02.10.18
✎
10:44
|
статистику часто обновляете?
|
|||
7
Vadim_37
02.10.18
✎
10:46
|
последовательность партионного учета подтягиваете?
|
|||
8
Dooro
02.10.18
✎
10:49
|
последовательность не подтягиваем.
Статистику обновить. Это где.? |
|||
9
Vadim_37
02.10.18
✎
10:55
|
(8) Именно поэтому и проблемы с запросом к регистру партий.
Статистика обновляется в SQL. |
|||
10
Spieluhr
02.10.18
✎
11:02
|
(5) На картинке дедлок у вас, а не ожидания на блокировке
|
|||
11
Dooro
02.10.18
✎
11:02
|
восстановить последовательность?
|
|||
12
Dooro
02.10.18
✎
11:03
|
что такое дедлок
|
|||
13
Spieluhr
02.10.18
✎
11:05
|
(12) штука неприятная и непростая в диагностике, погуглите, теорию писать не буду здесь
|
|||
14
Spieluhr
02.10.18
✎
11:07
|
причем дедлок возникает в СУБД судя по описанию ошибки
|
|||
15
Dooro
02.10.18
✎
11:11
|
в базе ? Могут быть это злонамеренные действия. В теории я это допускаю. Какие то изменения могли быть произведены.
|
|||
16
Dooro
02.10.18
✎
11:11
|
потому что работала раньше нормально.
|
|||
17
Salimbek
02.10.18
✎
11:17
|
(15) Это 100% злонамеренные действия. Не обновлять статистику - это чистое зло со стороны адимнистратора БД )))
|
|||
18
Spieluhr
02.10.18
✎
11:20
|
(16) если спеца по этой теме у вас нет, попробуйте самое простое - обновлять статистику и чистить процедурный кэш на SQL
|
|||
19
Dooro
02.10.18
✎
11:23
|
статистика обновляется и процедурный кеш чистится. я спросил у нашего адимина. Каждую ночь.
|
|||
20
Dooro
02.10.18
✎
11:30
|
ДАА! Только что уточнили. Не обновляется статистика и не чистится кеш. Попробуем. это делать. Поможет не поможет, посмотрим. Спасибо!
|
|||
21
Dooro
02.10.18
✎
11:37
|
Если можно описать процедуру очистку процедурного кеша. это как и где.
|
|||
22
Vadim_37
02.10.18
✎
11:54
|
DBCC FREEPROCCACHE
http://www.gilev.ru/forum/viewtopic.php?f=17&t=358 Вот зачем мне эти знания? У вас же админ есть. |
|||
23
Vadim_37
02.10.18
✎
11:56
|
цитата с ИТС:
Статистика может обновляться настолько часто, насколько это необходимо. Оптимальная частота обновления статистик зависит от величины и характера нагрузки на систему и определяется экспериментальным путем. В реально работающей системе разные таблицы требуют различной частоты обновления статистик. Путем анализа планов запроса можно установить, какие таблицы больше других нуждаются в частом обновлении статистик, и настроить две (или более) различных регламентных процедуры: для часто обновляемых таблиц и для всех остальных таблиц. |
|||
24
Dooro
02.10.18
✎
12:11
|
Спасибо всем. Будем пробовать.
|
|||
25
Солберецкий забор
02.10.18
✎
12:29
|
(24) у вас ничего не получится
|
|||
26
Dooro
02.10.18
✎
12:56
|
почему
|
|||
27
Glup0sti
02.10.18
✎
13:08
|
||||
28
whitedi
02.10.18
✎
13:27
|
тоже в сетевой рознице как-то столкнулись с резким замедлением и блокировками sql в какой-то момент.
Уже не вспомню, помогал ли рестарт sql. Реально помогало dbcc opentran - как правило "start time" не должно быть больше 3 минут и kill[[id процесса]. А вообще в этой статье описано подробно http://catalog.mista.ru/public/277252/. |
|||
29
H A D G E H O G s
02.10.18
✎
13:36
|
Взаимоблокировка разруливается как 2 пальца.
Но см (25). |
|||
30
Dooro
02.10.18
✎
13:40
|
я посмотрел код напичкан НачатьТранзакцию() везде.
Как же разрулить взаимоблокировку. |
|||
31
Salimbek
02.10.18
✎
13:47
|
(30) Например, ускорить выполнение запросов за счет обновления статистики.
|
|||
32
Dooro
02.10.18
✎
13:49
|
это будет делаться каждый день. Я посмотрел - стоит режим блокировки - управляемый. на конфе
|
|||
33
Glup0sti
02.10.18
✎
14:05
|
(32) Управляемые, на то и управляемые, что их ставить самому надо. У тебя один путь - найти и устранить по предложенной методике или (25).
Возможно(не имея никаких фактов, пальцем в небо), при переводе конфы с автоматических блокировок в партионном учете забыли БлокироватьДляИзменения = Истина. |
|||
34
Dooro
02.10.18
✎
14:52
|
В модуле ОбщийМодуль.УправлениеЗапасамиПартионныйУчет ,
Который вызывает блокировки, действительно нет ни одной записи БлокироватьДляИзменения = Истина. Да и вообще во всей конфе нет. Я подозреваю, что база была ранее файловая, где это не нужно было. Теперь скл |
|||
35
Dooro
02.10.18
✎
14:54
|
при том что регистри накопления например партии товаров имеют разрешить разделение итогов = истина.
|
|||
36
Glup0sti
02.10.18
✎
16:18
|
(34) (35)
Вот они фактики: 1. Нет БлокироватьДляИзменения 2. Есть разделение итогов Еще раз...это, чтобы гарантировано понять в чем проблема https://ausevich.ru/ekspert/blokirovka-indeksa-na-urovne-stranits-prakticheskoe-rassledovanie-vzaimoblokirovki/ А это, чтобы проверить/исправить, то что понаписано в конфе https://its.1c.ru/db/metod8dev#content:5839:hdoc |
|||
37
Dooro
02.10.18
✎
17:00
|
а если я просто переключу режим блокировки в конфе с управляемой на автоматический ?
|
|||
38
Glup0sti
02.10.18
✎
17:13
|
(37)
Точно придется комментировать Новый БлокировкаДанных |
|||
39
rphosts
02.10.18
✎
17:55
|
(5) конфа нетиповая?
|
|||
40
rphosts
02.10.18
✎
17:57
|
дидлок - следствие разного порядка захвата ресурсов. Измените порядок захвата ресурсов - чаще всего этого уже хватает.
|
|||
41
rphosts
02.10.18
✎
17:58
|
(37) не забудь сделать бэкап - к нему откатываться придется
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |