SECURITY_CRYPTO_CONTEXT_MUTEX чекає, причина SQL Server 2016 перестає відповідати на запити клієнтів, SQL Server 2014 та 2016

Bug #: 11816663 (sqlbuvsts01)
Bug #: 82115 (Content Idea)
Bug #: 50341 (Content Idea)

Ознаки

Microsoft SQL Server-2014 року та 2016 перестає відповідати на запити клієнтів. Ця проблема виникає, коли значне число SECURITY_CRYPTO_CONTEXT_MUTEX очікування, що виникла. Під час перегляду, за очікування, їх статистики можуть бути такими.

wait_type

waiting_tasks_count

wait_time_ms

max_wait_time_ms

signal_wait_time_ms

SECURITY_CRYPTO_CONTEXT_MUTEX

5689

84054706

191537

Спосіб вирішення

Виправлення для цієї проблеми входить до складу сукупний пакет оновлень для SQL Server:

Сукупний пакет оновлень 1, для SQL Server 2016

Сукупний пакет оновлень, 12 для SQL Server 2014 SP2

 

Нові накопичувальне оновлення для SQL Server, містить усі виправлення, і усі виправлення безпеки, які входять до складу попередній сукупний пакет оновлень. Перевірте останній сукупний пакет оновлень для SQL Server:

Останній сукупний пакет оновлень для SQL Server 2016

Останній сукупний пакет оновлень для SQL Server 2014

Виправлення для SQL Server 2014 SP2

Оновлення підтримуваних доступна. Ми рекомендуємо, щоб усі користувачі, застосувати це оновлення.

Завантажити оновлення SQLServer2014SP2, KB3173472, x64.exe

Завантажити оновлення SQLServer2014SP2, KB3173472, x86.exe

Примітка. Після інсталяції цього оновлення, створення буде оновлено до 12.0.5578.0.

Hotfix for SQL Server 2014 SP2

Internal package location:

To obtain the hotfix, copy the following address and open it in your browser:

\\sqlbuilds\TestBuilds\SQL14_SP2_QFE-OD\12.0.5578.0\retail\release\packages\SQLServer2014-KB3173472-x64.exe
\\sqlbuilds\TestBuilds\SQL14_SP2_QFE-OD\12.0.5578.0\retail\release\packages\SQLServer2014-KB3173472-x86.exe

Build path of packages:

\\sqlbuilds\Released\SQLServer2014\SP2\Hotfixes\12.0.5578.0

Стан

Корпорація Майкрософт підтвердила існування цієї неполадки у продуктах Майкрософт, перелічених у розділі "Застосовується до".

Call stack information

0:124> ~124s
ntdll!ZwSignalAndWaitForSingleObject+0xa:
00007ff8`5d121fea c3 ret
0:124> kL
# Child-SP RetAddr Call Site
00 000001a8`4622c618 00007ff8`5a679b7e ntdll!ZwSignalAndWaitForSingleObject+0xa
01 000001a8`4622c620 00007ff8`32474a57 KERNELBASE!SignalObjectAndWait+0xc8
02 (Inline Function) --------`-------- sqldk!SystemThread::SignalAndWait+0x2d
03 000001a8`4622c6d0 00007ff8`324714cc sqldk!SOS_Scheduler::Switch+0x106
04 000001a8`4622c9c0 00007ff8`2b9eb93a sqldk!SOS_Scheduler::SuspendNonPreemptive+0xd3
05 000001a8`4622ca00 00007ff8`2c81d79b sqllang!EventInternal<SuspendQueueSLock>::Wait+0x1e7
06 (Inline Function) --------`-------- sqllang!SOS_Mutex::Wait+0x5d
07 (Inline Function) --------`-------- sqllang!TAutoMutex<SOS_Mutex,1>::GetAccess+0x5d
08 000001a8`4622ca50 00007ff8`2c7cb5a4 sqllang!CSECSessionCryptoContext::GetCryptoContext+0xdb
09 000001a8`4622cb10 00007ff8`2c6f9b90 sqllang!SetAppRole+0x5e5
0a 000001a8`4622d610 00007ff8`2b9f83da sqllang!CStmtSetUser::XretExecute+0x1c1
0b (Inline Function) --------`-------- sqllang!CExecStmtLoopVars::ExecuteXStmtAndSetXretReturn+0xf
0c 000001a8`4622d7c0 00007ff8`2b9f7e43 sqllang!CMsqlExecContext::ExecuteStmts<1,1>+0x40d
0d 000001a8`4622d900 00007ff8`2b9f74b4 sqllang!CMsqlExecContext::FExecute+0xa9e
0e 000001a8`4622dc30 00007ff8`2c6e1cfd sqllang!CSQLSource::Execute+0x981
0f 000001a8`4622ddd0 00007ff8`2c6e1701 sqllang!CStmtExecProc::XretLocalExec+0x26e
10 000001a8`4622de50 00007ff8`2c6de488 sqllang!CStmtExecProc::XretExecExecute+0x481
11 000001a8`4622e600 00007ff8`2b9f83da sqllang!CXStmtExecProc::XretExecute+0x38
12 (Inline Function) --------`-------- sqllang!CExecStmtLoopVars::ExecuteXStmtAndSetXretReturn+0xf
13 000001a8`4622e640 00007ff8`2b9f7e43 sqllang!CMsqlExecContext::ExecuteStmts<1,1>+0x40d
14 000001a8`4622e780 00007ff8`2b9f74b4 sqllang!CMsqlExecContext::FExecute+0xa9e
15 000001a8`4622eab0 00007ff8`2ba0092b sqllang!CSQLSource::Execute+0x981
16 000001a8`4622ec50 00007ff8`2b9f4be2 sqllang!process_request+0xe61
17 000001a8`4622f220 00007ff8`2b9f4743 sqllang!process_commands_internal+0x2df
18 000001a8`4622f2a0 00007ff8`3247508d sqllang!process_messages+0x253
19 000001a8`4622f4b0 00007ff8`324757e5 sqldk!SOS_Task::Param::Execute+0x231
1a 000001a8`4622fab0 00007ff8`3247543d sqldk!SOS_Scheduler::RunTask+0xaa
1b 000001a8`4622fb20 00007ff8`32489cf8 sqldk!SOS_Scheduler::ProcessTasks+0x3cd
1c 000001a8`4622fc00 00007ff8`32489d90 sqldk!SchedulerManager::WorkerEntryPoint+0x2a1
1d 000001a8`4622fcd0 00007ff8`32489609 sqldk!SystemThread::RunWorker+0x8f
1e 000001a8`4622fd00 00007ff8`324898a8 sqldk!SystemThreadDispatcher::ProcessWorker+0x2c1
1f 000001a8`4622fda0 00007ff8`5c7113d2 sqldk!SchedulerManager::ThreadEntryPoint+0x1d8
20 000001a8`4622fe50 00007ff8`5d0a54e4 kernel32!BaseThreadInitThunk+0x22
21 000001a8`4622fe80 00000000`00000000 ntdll!RtlUserThreadStart+0x3
Thread owning the mutex
0:1906> kL
# Child-SP RetAddr Call Site
00 00000291`4dccc398 00007ff8`5a5f1118 ntdll!ZwWaitForSingleObject+0xa
01 00000291`4dccc3a0 00007ff8`324859cc KERNELBASE!WaitForSingleObjectEx+0x94
02 (Inline Function) --------`-------- sqldk!SystemThread::SignalAndWait+0x10fa2
03 00000291`4dccc440 00007ff8`32485973 sqldk!SOS_Scheduler::Switch+0x1f1
04 00000291`4dccc730 00007ff8`2bab15e7 sqldk!ThreadScheduler::SwitchNonPreemptive+0xeb
05 (Inline Function) --------`-------- sqllang!AutoSwitchPreemptive::{dtor}+0x23
06 00000291`4dccc7a0 00007ff8`2bc27dfa sqllang!SOS_Task::AutoSwitchPreemptive::~AutoSwitchPreemptive+0x53
07 00000291`4dccc7e0 00007ff8`2c81d7eb sqllang!CSECCryptoContext::Init+0x361
08 (Inline Function) --------`-------- sqllang!CSECCryptoContext::Init+0x1b
09 00000291`4dccc8a0 00007ff8`2c7cb5a4 sqllang!CSECSessionCryptoContext::GetCryptoContext+0x12b
0a 00000291`4dccc960 00007ff8`2c6f9b90 sqllang!SetAppRole+0x5e5
0b 00000291`4dccd460 00007ff8`2b9f83da sqllang!CStmtSetUser::XretExecute+0x1c1
0c (Inline Function) --------`-------- sqllang!CExecStmtLoopVars::ExecuteXStmtAndSetXretReturn+0xf
0d 00000291`4dccd610 00007ff8`2b9f7e43 sqllang!CMsqlExecContext::ExecuteStmts<1,1>+0x40d
0e 00000291`4dccd750 00007ff8`2b9f74b4 sqllang!CMsqlExecContext::FExecute+0xa9e
0f 00000291`4dccda80 00007ff8`2c6e1cfd sqllang!CSQLSource::Execute+0x981
10 00000291`4dccdc20 00007ff8`2c6e1701 sqllang!CStmtExecProc::XretLocalExec+0x26e
11 00000291`4dccdca0 00007ff8`2c6de488 sqllang!CStmtExecProc::XretExecExecute+0x481
12 00000291`4dcce450 00007ff8`2b9f83da sqllang!CXStmtExecProc::XretExecute+0x38
13 (Inline Function) --------`-------- sqllang!CExecStmtLoopVars::ExecuteXStmtAndSetXretReturn+0xf
14 00000291`4dcce490 00007ff8`2b9f7e43 sqllang!CMsqlExecContext::ExecuteStmts<1,1>+0x40d
15 00000291`4dcce5d0 00007ff8`2b9f74b4 sqllang!CMsqlExecContext::FExecute+0xa9e
16 00000291`4dcce900 00007ff8`2ba0092b sqllang!CSQLSource::Execute+0x981
17 00000291`4dcceaa0 00007ff8`2b9f4be2 sqllang!process_request+0xe61
18 00000291`4dccf070 00007ff8`2b9f4743 sqllang!process_commands_internal+0x2df
19 00000291`4dccf0f0 00007ff8`3247508d sqllang!process_messages+0x253
1a 00000291`4dccf300 00007ff8`324757e5 sqldk!SOS_Task::Param::Execute+0x231
1b 00000291`4dccf900 00007ff8`3247543d sqldk!SOS_Scheduler::RunTask+0xaa
1c 00000291`4dccf970 00007ff8`32489cf8 sqldk!SOS_Scheduler::ProcessTasks+0x3cd
1d 00000291`4dccfa50 00007ff8`32489d90 sqldk!SchedulerManager::WorkerEntryPoint+0x2a1
1e 00000291`4dccfb20 00007ff8`32489609 sqldk!SystemThread::RunWorker+0x8f
1f 00000291`4dccfb50 00007ff8`324898a8 sqldk!SystemThreadDispatcher::ProcessWorker+0x2c1
20 00000291`4dccfbf0 00007ff8`5c7113d2 sqldk!SchedulerManager::ThreadEntryPoint+0x1d8
21 00000291`4dccfca0 00007ff8`5d0a54e4 kernel32!BaseThreadInitThunk+0x22
22 00000291`4dccfcd0 00000000`00000000 ntdll!RtlUserThreadStart+0x34
Following trace flags are enabled. -T 4616
-T 9912
-T 6527
-T 9495
-T 2467
-T 8076

Посилання

Дізнайтеся про термінологію , Microsoft, що використовується для опису оновлень програмного забезпечення.

KE: v-fmeng
Author:
Writer: v-thomr
Tech Reviewer: stevengo; jackr; leewoods; v-fmeng; sqlprev; daleche
Editor: v-tiburd

Потрібна додаткова довідка?

Отримуйте нові функції раніше за інших
Приєднатися до Microsoft оцінювачів

Чи були ці відомості корисні?

Дякуємо за ваш відгук!

Дякуємо, що знайшли час і надіслали нам відгук! Можливо, у нас не буде часу відповісти на кожен коментар, але докладемо максимум зусиль, щоб переглянути їх усі. Вас цікавить, як ми використовуємо ваші відгуки?

×