Периодически в мониторе LCK_M_SCH_S при получении параметров SQL с последующим таймаутом.

89 views
Skip to first unread message

Валерий Волошин

unread,
Jul 17, 2014, 4:38:01 AM7/17/14
to enterprise...@googlegroups.com
В мониторе активности такая строка:

95 1 СИсториейДляТиБ_02 SUSPENDED SELECT 1C:Enterprise 8.2 187631 LCK_M_SCH_S objectlock lockPartition=1 objid=489493639 subresource=FULL dbid=2 id=lock4c243c680 mode=Sch-M associatedObjectId=489493639 66 16 default ERY-ПК sa

Выполняемый запрос:

SELECT OBJECT_NAME(mid.object_id) SQL,
AVG(migs.unique_compiles) unique_compiles,
AVG(migs.user_seeks) user_seeks,
AVG(migs.user_scans) user_scans,
AVG(CAST(migs.avg_total_user_cost AS int)) total_user_cost,
AVG(CAST(migs.avg_user_impact AS int)) user_impact,
db.create_date
FROM sys.dm_db_missing_index_groups mig
JOIN sys.dm_db_missing_index_group_stats migs 
ON migs.group_handle = mig.index_group_handle
JOIN sys.dm_db_missing_index_details mid 
ON mig.index_handle = mid.index_handle
LEFT JOIN sys.databases db 
ON 1=1
WHERE db.name = 'tempdb'
AND mid.database_id = DB_ID()
GROUP BY 
OBJECT_NAME(mid.object_id),
db.create_date

Но по сути от запроса это не зависит есть  и такой запрос:

(@tablename  nvarchar(12))--declare @TableName varchar(100)
--set @TableName ='_Reference72'-- '_Reference19646' --'_Reference6' '_AccumRegTotals19685''_AccumReg17132'

--для уровня совместимости 80
set nocount on
DECLARE @db_id int,@object_id int
SET @db_id = DB_ID()
SET @object_id = OBJECT_ID(@TableName)

--создаем таблицу рекомендованных индексов 
If OBJECT_ID ('tempdb.dbo.#newIndex', 'U') IS NOT NULL
DROP TABLE #newIndex
Create Table #newIndex(
index_group_handle int
,column_name varchar(100)
,column_usage varchar(20)
,column_id int)

В итоге какой бы таймаут я не выставлял блокировка висит до таймаута. 
Сервер: 10.50.2500 
База большая (800 гб) пытаюсь смотреть индексы по регистру (120 000 000 записей) 

Но если блокировок нет то все срабатывает быстро.

Валерий Волошин

unread,
Jul 17, 2014, 4:59:29 AM7/17/14
to enterprise...@googlegroups.com
Вероятно это как то связано с тем что в дереве объектов у меня отмечен один регистр накопления при это остальные таблицы (Итоги,Опции) не отмечены.

Герман Кудяков

unread,
Jul 18, 2014, 3:35:51 AM7/18/14
to enterprise...@googlegroups.com
Возникает блокировка при получении статистика по индексу?
Валерий меня смущает имя БД.


четверг, 17 июля 2014 г., 12:38:01 UTC+4 пользователь Валерий Волошин написал:

Герман Кудяков

unread,
Jul 18, 2014, 3:36:07 AM7/18/14
to enterprise...@googlegroups.com
Нет не связано

четверг, 17 июля 2014 г., 12:59:29 UTC+4 пользователь Валерий Волошин написал:

Валерий Волошин

unread,
Jul 18, 2014, 12:35:15 PM7/18/14
to enterprise...@googlegroups.com
Я попробую повторить но вообще каждый раз разные ошибки я делаю так:
Обновить дерево, выделяю все объекты,потом рядом кнопка получить параметры SDBL потом сразу получить параметры SQL в итоге даже информация о размерах таблиц не заполняется.
Потом если пощелкать то начинает работать а иногда виснет на блокировках причем не обязательно при обновлении статистики по индексу. В базе кроме меня нет никого.
Но пока конкретно что то не могу сказать нужно смотреть.
Скорей всего через неделю видео запишу и отправлю вам.
Reply all
Reply to author
Forward
0 new messages