Перейти до основного
Підтримка
Вхід
Вхід за допомогою облікового запису Microsoft
Увійдіть або створіть обліковий запис.
Вітаємо,
Виберіть інший обліковий запис.
У вас є кілька облікових записів
Виберіть обліковий запис, за допомогою якого потрібно ввійти.

Помилка #: 187868 (супровід вмісту)VSTS: 1340145

Корпорація Майкрософт поширює, Microsoft SQL Server 2012 немає виправлень один із завантаження файлів. Через те, що ці виправлення сукупні, кожен новий пакет, містить усі поточні виправлення, і всі оновлення системи безпеки, що входили до складу попередніх SQL Server 2012, оновити випуск.

Причини

Розглянемо таку ситуацію:

  • Створення збережену процедуру, який використовує таблиці параметр (TVP), Microsoft SQL Server 2012 немає.

  • Використання SQL Profiler або SQL Server розширена події для записування до віддаленого виклику процедур: запуск та віддаленого виклику процедур: завершення події.

  • Час виконання запиту, які використовуються в TVP.

  • Час очікування відповіді на запит.

У цьому випадку не пов'язані з планувальник помилка, і запити, які працюють на тому самому планувальник, що працюють повільно. Крім того, файл міні-дампа, створюється в папці журналу SQL Server.
Ця проблема виникає, з'являється повідомлення про помилку приблизно такого вигляду:

System.Data.SqlClient.SqlException (0x80131904): Вичерпано. Період очікування, що минув до завершення роботи або сервер не відповідає.
на System.Data.SqlClient.SqlInternalConnection.OnError (SqlException винятків, логічний вираз breakConnection)
на System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
на System.Data.SqlClient.TdsParserStateObject.ReadSniError (TdsParserStateObject stateObj, UInt32 помилки)
на System.Data.SqlClient.TdsParserStateObject.ReadSni (DbAsyncResult asyncResult, TdsParserStateObject stateObj)
на System.Data.SqlClient.TdsParserStateObject.ReadNetworkPacket()
на System.Data.SqlClient.TdsParserStateObject.ReadByte()
на System.Data.SqlClient.TdsParser.Run (RunBehavior runBehavior, SqlCommand cmdHandler, модуля, потік даних, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj.)
на System.Data.SqlClient.SqlCommand.FinishExecuteReader (модуля ds, RunBehavior runBehavior, рядок resetOptionsString)
на System.Data.SqlClient.SqlCommand.RunExecuteReaderTds (CommandBehavior cmdBehavior RunBehavior runBehavior, логічний вираз returnStream, логічний вираз асинхронний)
на System.Data.SqlClient.SqlCommand.RunExecuteReader (CommandBehavior cmdBehavior RunBehavior runBehavior, логічний вираз returnStream, рядок метод DbAsyncResult результати)
на System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery (DbAsyncResult результати, рядок methodName, логічний вираз sendToPipe)
на System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
на TVPApp.Program.Main (args [], рядок)


Планувальник помилки не пов'язані з разом із повідомлення про помилку, подібне до наведеного нижче, записується в журнал помилок SQL Server:

< Дата >< часу >-сервер, за допомогою "dbghelp.dll" версії "4.0.5"
< Дати >< час > Server * * * не вдалося отримати потоків spid #
<Date><Time> Server * *******************************************************************************
< Дати >< час > Server *
< Дати >< час > Server * почати СТЕКА ДАМПУ:
< Дати >< час > Server * < дати >< час > spid #
< Дати >< час > Server *
< Дати >< час > Server * не пов'язані з планувальником
< Дати >< час > Server *
<Date><Time> Server * *******************************************************************************
Підпис стеку < дати >< час > Server для смітник, є 0x000000000000002C
< Дати >< час > Server зовнішній дамп-процес повернення код 0x20000001.
Зовнішній дампу не повертає жодних помилок.
Процес для сервера < дати >< час > 0:0:0 (0x1670) робочий 0x0000000004EDE160 здається, не пов'язані з 5 планувальник. Потік час створення: 13014210386757. Потік-приблизно ЦП використано: ядра 0 ms, користувач 70106 пані, процес використання 16%. Система простою, 77%. Інтервал: 70140 ms.
Процес для сервера < дати >< час > 0:0:0 (0x1670) робочий 0x0000000004EDE160 здається, не пов'язані з 5 планувальник. Потік час створення:

Причина

Ця проблема виникає, через помилку в обробника баз даних сервера SQL Server 2012. Стовпці текст у полі TVP здійснюється вставлення рядків або буферів та збільшення кількості рядків, збільшує кількість буферів. Однак, процес, який видає буферів, багато часу. Таким чином, не пов'язані з планувальником помилку створюється під час випуску та стиснути дій виникають.

Примітка. Проблема звернувся в такій статті бази знань Майкрософт. Однак пакет сукупного оновлення, описане в статті, не щодо неполадки час очікування запиту.

ВИПРАВЛЕННЯ в 2520808 : не пов'язані з планувальником помилка під час виконання запиту, який використовує TVP, SQL Server 2008 або SQL Server 2008 R2, якщо використовується SQL Profiler або SQL Server розширена події

Вирішення

Відомості про Сукупне оновлення

Сукупний пакет оновлень 5 для SQL Server 2012 з пакетом оновлень 1 (SP1)

Виправлення для цієї проблеми, спочатку було випущено у 5 накопичувальне оновлення. Щоб отримати додаткові відомості про те, як отримати цей пакет накопичувальне оновлення для SQL Server 2012 клацніть номер статті в базі знань Microsoft Knowledge Base:

2861107 сукупного оновлення пакета 5, для SQL Server 2012Примітка. Оскільки ці збірки сукупні, кожен новий пакет, містить усі виправлення, і усі виправлення безпеки, що входили до складу попередніх SQL Server 2012 вирішити, випуск. Корпорація Майкрософт рекомендує, що ви вважаєте, що застосування останньому випуску виправити, що містить це виправлення. Щоб отримати додаткові відомості, клацніть номер статті в базі знань Microsoft:

2772858 до SQL Server 2012 будує, які були надані після випуску пакета оновлень 1 для SQL Server 2012

Виправлення помилок

Щоб тимчасово усунути цю проблему, скористайтеся одним із наведених нижче способів.

  • Не використовуйте SQL Profiler або SQL Server розширена події.

  • Зніміть прапорець у віддаленого виклику процедур: запуск та віддаленого виклику процедур: завершено прапорці визначення трасування.

Додаткові відомості

Це виправлення не застосовується до SQL Server 2008 або SQL Server 2008 R2, під час публікації цього КБ. Будь-які користувачі виникнення проблема у SQL Server 2008 або SQL Server 2008 R2, навіть після того, як користувачі, інсталюйте пакет, описану в цій статті, перевіряти в разі вичерпання часу очікування запиту і визначити, чи можна усунути за очікування. В іншому випадку, надішліть запит, щоб застосувати це виправлення для SQL Server 2008 або SQL Server 2008 R2.

ВИПРАВЛЕННЯ в 2520808 : не пов'язані з планувальником помилка під час виконання запиту, який використовує TVP, SQL Server 2008 або SQL Server 2008 R2, якщо використовується SQL Profiler або SQL Server розширена події

Відомості про стек викликів

sqlmin!CLinkedMap<__int64,CCheckReadersAndWriters::CCounts>::FLookup+0x29sqlmin!CCheckReadersAndWriters::Release+0x69
sqlmin!CMainIlb::{dtor}+0x3d
sqlmin!CMainIlb::`scalar deleting destructor'+0x3d
sqlmin!CBlobHandleFactoryMain::ReleaseILockBytes+0x13
sqlmin!CMainIlb::Release+0xf0
sqllang!CTraceRpcBinaryStream::~CTraceRpcBinaryStream+0x80
sqllang!CTraceTvpData::{dtor}+0x14
sqllang!CTraceTvpData::`scalar deleting destructor'+0x1e
sqllang!CRpcTraceHelper::CleanUpTraceTvpData+0x33
sqllang!CRpcTraceHelper::~CRpcTraceHelper+0x70
sqllang!CRPCExecEnv::~CRPCExecEnv+0x2ab
sqllang!CRPCExecEnv::`scalar deleting destructor'+0x14
sqllang!process_request+0x10b1
sqllang!process_commands+0x51c
sqldk!SOS_Task::Param::Execute+0x21e
sqldk!SOS_Scheduler::RunTask+0xa8
sqldk!SOS_Scheduler::ProcessTasks+0x299
sqldk!SchedulerManager::WorkerEntryPoint+0x261
sqldk!SystemThread::RunWorker+0x8f
sqldk!SystemThreadDispatcher::ProcessWorker+0x3c8
sqldk!SchedulerManager::ThreadEntryPoint+0x236
kernel32!BaseThreadInitThunk+0xd
ntdll!RtlUserThreadStart+0x1d
sqlmin!CLinkedMap<__int64,CCheckReadersAndWriters::CCounts>::FDelete+0x34sqlmin!CCheckReadersAndWriters::Release+0xfb
sqlmin!CMainIlb::{dtor}+0x3d
sqlmin!CMainIlb::`scalar deleting destructor'+0x3d
sqlmin!CBlobHandleFactoryMain::ReleaseILockBytes+0x13
sqlmin!CMainIlb::Release+0xf0
sqllang!CTraceRpcBinaryStream::~CTraceRpcBinaryStream+0x80
sqllang!CTraceTvpData::{dtor}+0x11
sqllang!CRpcTraceHelper::CleanUpTraceTvpData+0x55
sqllang!CRpcTraceHelper::TracePostExec+0x1bf
sqllang!CRPCExecEnv::OnExecFinish+0xaa
sqllang!CProtocolHeaderInfo::{dtor}+0xffffffff`ffb158e2
sqllang!process_request+0x764
sqllang!process_commands+0x51c
sqldk!SOS_Task::Param::Execute+0x21e
sqldk!SOS_Scheduler::RunTask+0xa8
sqldk!SOS_Scheduler::ProcessTasks+0x29a
sqldk!SchedulerManager::WorkerEntryPoint+0x261
sqldk!SystemThread::RunWorker+0x8f
sqldk!SystemThreadDispatcher::ProcessWorker+0x3c8
sqldk!SchedulerManager::ThreadEntryPoint+0x236
kernel32!BaseThreadInitThunk+0x1a
ntdll!RtlUserThreadStart+0x1d

Стан

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

Author: jannaw
Writer: v-yipli
Технічний редактор: pradm; jannaw; hozhan
Editor: v-mordew

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

Потрібні додаткові параметри?

Ознайомтеся з перевагами передплати, перегляньте навчальні курси, дізнайтесь, як захистити свій пристрій тощо.

Спільноти допомагають ставити запитання й відповідати на них, надавати відгуки та дізнаватися думки висококваліфікованих експертів.

Чи ця інформація була корисною?

Наскільки ви задоволені якістю мови?
Що вплинуло на ваші враження?
Натиснувши кнопку "Надіслати", ви надасте свій відгук для покращення продуктів і служб Microsoft. Ваш ІТ-адміністратор зможе збирати ці дані. Декларація про конфіденційність.

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

×