Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Error: 1222, Severity: 16, State: 18  [new]
Dmitry V. Liseev
Member [заблокирован]

Откуда: Санкт-Петербург
Сообщений: 5490
Имею в трейсе профайлера огромное количество записей EventClass = 33 с указанной ошибкой. Учебники дают текст "Lock request time out period exceeded". При этом включены также евенты с Duration > 50 000 микросекунд:

trace_event_idname
24Lock:Acquired
25Lock:Deadlock
26Lock:Cancel
27Lock:Timeout
59Lock:Deadlock Chain
148Deadlock graph
189Lock:Timeout (timeout > 0)


Однако в трейсе я их не наблюдаю. Как понять, что за блокировки там отвалились? Это вообще нормально, когда в трейсе нет инфы о блокировках, но валятся исключения о превышении времени ожидания? Или все таймауты меньше 50 миллисекунд и не попадают в мой трейс?
11 авг 17, 15:19    [20717174]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36691
Через set lock_timeout можно задать любой таймаут.
11 авг 17, 15:41    [20717258]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
invm
Member

Откуда: Москва
Сообщений: 9116
Dmitry V. Liseev
Как понять, что за блокировки там отвалились? Это вообще нормально, когда в трейсе нет инфы о блокировках, но валятся исключения о превышении времени ожидания?
Все необходимое в трейсе есть: столбцы TextData, ObjectID, ObjectID2, Type.
11 авг 17, 16:16    [20717358]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
Dmitry V. Liseev
Member [заблокирован]

Откуда: Санкт-Петербург
Сообщений: 5490
invm
Dmitry V. Liseev
Как понять, что за блокировки там отвалились? Это вообще нормально, когда в трейсе нет инфы о блокировках, но валятся исключения о превышении времени ожидания?
Все необходимое в трейсе есть: столбцы TextData, ObjectID, ObjectID2, Type.

SELECT TOP 1
	t.Error,
	t.Severity,
	t.[State],
	t.TextData,
	t.ObjectID,
	t.ObjectID2,
	t.ObjectType,
	t.[Type]
FROM Trace_01 t
WHERE
	t.EventClass = 33
	AND t.Error = 1222

ErrorSeverityStateTextDataObjectIDObjectID2ObjectTypeType
12221618Error: 1222, Severity: 16, State: 18NULLNULLNULLNULL
11 авг 17, 16:48    [20717435]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
Dmitry V. Liseev
Member [заблокирован]

Откуда: Санкт-Петербург
Сообщений: 5490
Гавриленко Сергей Алексеевич
Через set lock_timeout можно задать любой таймаут.
Задаёт, видимо, приложение. Исходников нет. Я просто включаю профайлер и ловлю запросы.
11 авг 17, 16:50    [20717441]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6794
Dmitry V. Liseev,

на msdb? серверброкер? SISS? версия?
11 авг 17, 17:02    [20717466]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
Dmitry V. Liseev
Member [заблокирован]

Откуда: Санкт-Петербург
Сообщений: 5490
TaPaK
Dmitry V. Liseev,

на msdb? серверброкер? SISS? версия?
Microsoft SQL Server 2008 R2 (SP3) - 10.50.6000.34 (X64) Aug 19 2014 12:21:34 Copyright (c) Microsoft Corporation Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1) (Hypervisor)
11 авг 17, 17:06    [20717478]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7392
Dmitry V. Liseev,

SPID с каким номером? Или без номера?
11 авг 17, 17:34    [20717540]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
invm
Member

Откуда: Москва
Сообщений: 9116
Dmitry V. Liseev
WHERE
	t.EventClass = 33
Вообще-то, EventClass 33 - это Exception, а не Lock timeout.
Нужно смотреть EventClass 27 или 189.
11 авг 17, 17:43    [20717553]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7392
invm,

а, это объясняет почему ИД объекта пустой.
11 авг 17, 17:46    [20717560]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
Dmitry V. Liseev
Member [заблокирован]

Откуда: Санкт-Петербург
Сообщений: 5490
invm
Dmitry V. Liseev
WHERE
	t.EventClass = 33
Вообще-то, EventClass 33 - это Exception, а не Lock timeout.
Нужно смотреть EventClass 27 или 189.
Нет таких. Я это указал в первом сообщении.
14 авг 17, 17:43    [20722871]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
Dmitry V. Liseev
Member [заблокирован]

Откуда: Санкт-Петербург
Сообщений: 5490
Владислав Колосов
Dmitry V. Liseev,

SPID с каким номером? Или без номера?
Номер есть. Но, это какой-то не пользовательский номер. Под этим SPID в трейсе только ошибки.
14 авг 17, 17:44    [20722876]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7392
Dmitry V. Liseev,

подозрение на Service Broker, как выше писали.
14 авг 17, 17:49    [20722904]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
invm
Member

Откуда: Москва
Сообщений: 9116
Dmitry V. Liseev
Нет таких.
Как говорится, на нет и суда нет...

ЗЫ: Событие 33 не может возникнуть без 27 или 189. Следовательно, у вас что-то не то в консерватории.
14 авг 17, 18:11    [20722989]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
Dmitry V. Liseev
Member [заблокирован]

Откуда: Санкт-Петербург
Сообщений: 5490
invm
Dmitry V. Liseev
Нет таких.
Как говорится, на нет и суда нет...

ЗЫ: Событие 33 не может возникнуть без 27 или 189. Следовательно, у вас что-то не то в консерватории.
И тем не менее, возникает, что меня и удивляет. Причём, десятки тысяч за день. Раньше такого не было. Как уже было сказано, я не могу фиксировать ВСЕ события на продакшене, не положив его на грунт. Потому фиксируются только те, где Duration не ниже 50 миллисекунд. Считается, что слишком быстро выполняющиеся запросы/блокировки для целей поиска проблем с производительностью не нужны. И потому такое ограничение генерирует достаточно информативный поток событий, и при этом разумной интенсивности, не кладя сервер на лопатки.

Отсюда возможно, что 27 или 189 были выполнены быстрее 50 миллисекунд и потому в лог не попали. Однако, что это за ситуация, когда такой короткий таймаут приводит к сообщению об ошибке? Причём, по видимым признакам весь софт работает нормально. Напрягает сам факт огромного потока эксепшенов в профайлере.
15 авг 17, 15:08    [20725370]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6794
Dmitry V. Liseev,

про сервер брокер судя по всему ещё мало раз написали
15 авг 17, 15:21    [20725430]     Ответить | Цитировать Сообщить модератору
 Re: Error: 1222, Severity: 16, State: 18  [new]
Dmitry V. Liseev
Member [заблокирован]

Откуда: Санкт-Петербург
Сообщений: 5490
TaPaK
Dmitry V. Liseev,

про сервер брокер судя по всему ещё мало раз написали
Я с этим никогда не работал. Можно кратко, почему есть евенты с эксепшенами, но, нет эвентов с лок таймаутами?
15 авг 17, 19:24    [20726345]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить