ИСПРАВИТЬ: Взаимоблокировка возникает, когда выполнить хранимую процедуру для изменения временной таблицы, если включено секционирование блокировок в SQL Server 2008 R2 или SQL Server 2012

Переводы статьи Переводы статьи
Код статьи: 2776344 - Vizualiza?i produsele pentru care se aplic? acest articol.
Корпорация Майкрософт распространяет исправления Microsoft SQL Server 2008 R2, Пакет обновления 2 в виде одного загружаемого файла. Так как исправления являются накопительными, каждый новый выпуск содержит все исправления и все исправления, входившие в состав предыдущих SQL Server 2008 R2 Пакет обновления 2 выпуска исправлений.
Развернуть все | Свернуть все

В этой статье

Проблема

Рассмотрим следующий сценарий:
  • Выполнение хранимой процедуры, содержащей ИЗМЕНЕНИЯ ТАБЛИЦЫ Инструкция для изменения временной таблицы в Microsoft SQL Server 2008 R2 или 2012 Microsoft SQL Server.
  • При попытке выполнить хранимую процедуру потоков пытаются получить доступ к временной таблице в то же время.
  • Компьютер, используемый для выполнения хранимой процедуры имеет 16 и более процессоров.
    Примечание Это означает, что секционирование блокировок включается автоматически.
В этом случае может привести к взаимоблокировкам на временную таблицу.

Причина

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

Решение

Накопительное обновление информации

Накопительное обновление для SQL Server 2012 6

Исправление, устраняющее эту проблему, сначала было выпущено в накопительное обновление 6. Дополнительные сведения о том, как получить этот накопительный пакет обновления для SQL Server 2012 щелкните следующий номер статьи базы знаний Майкрософт:
2728897 Накопительный пакет обновления 6 для SQL Server 2012
Примечание Поскольку построения являются накопительными, каждый новый выпуск исправление содержит все исправления и исправить все исправления, входившие в состав предыдущих 2012 SQL Server выпуска. Мы рекомендуем рассмотреть применение последний выпуск исправления, содержащего это исправление. Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт:
2692828 Строит 2012 SQL Server, выпущенных после 2012 SQL Server

Накопительное обновление 2 для SQL Server SP1 2012

Исправление, устраняющее эту проблему, сначала было выпущено в накопительное обновление 2. Дополнительные сведения о том, как получить этот накопительный пакет обновления для SQL Server 2012 1 (SP1) щелкните следующий номер статьи базы знаний Майкрософт:
2790947 Накопительный пакет обновления 2 для SQL Server 2012 Пакет обновления 1
Примечание Поскольку построения являются накопительными, каждый новый выпуск исправление содержит все исправления и исправить все исправления, входившие в состав предыдущих SP1 2012 SQL Server выпуска. Мы рекомендуем рассмотреть применение последний выпуск исправления, содержащего это исправление. Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт:
2772858 Строит 2012 SQL Server, выпущенных после Пакет обновления 1 для SQL Server 2012

Накопительное обновление 4 для SQL Server 2008 R2 SP2

Исправление, устраняющее эту проблему, сначала было выпущено в накопительное обновление 4. Дополнительные сведения о способах получения этот накопительный пакет обновления 2 (SP2) SQL Server 2008 R2 щелкните следующий номер статьи базы знаний Майкрософт:
2777358 Накопительное обновление 4 для SQL Server 2008 R2 Пакет обновления 2
Примечание Поскольку построения являются накопительными, каждый новый выпуск исправление содержит все исправления и все исправления, входившие в состав предыдущих SQL Server 2008 R2 SP 2 выпуска исправлений. Мы рекомендуем рассмотреть применение последний выпуск исправления, содержащего это исправление. Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт:
2730301 SQL Server 2008 R2 построений, вышедшие после выпуска SQL Server 2008 R2 Пакет обновления 2

Статус

Данное поведение является подтвержденной ошибкой продуктов Майкрософт, перечисленных в разделе «Информация в данной статье применима к:».

Временное решение

Чтобы обойти эту проблему, выполните хранимую процедуру с подсказку запроса WITH RECOMPILE .

Ссылки

Дополнительные сведения о секционировании блокировок посетите следующий веб-узел MSDN:
Общие сведения о секционировании блокировок
Для получения дополнительных сведений добавочных модель обслуживания для SQL Server щелкните следующий номер статьи базы знаний Майкрософт:
935897 Команда SQL Server предоставляет инкрементную модель обслуживания для обеспечения исправлений для повторяющихся проблем.
Для получения дополнительных сведений о схеме именования для обновления SQL Server щелкните следующий номер статьи базы знаний Майкрософт:
822499 Схема присвоения имен пакетам обновлений программного обеспечения Microsoft SQL Server
Дополнительные сведения о терминах, используемых при описании обновлений программного обеспечения, см. в следующей статье базы знаний Майкрософт:
824684 Стандартные термины, используемые при описании обновлений программных продуктов Майкрософт

Свойства

Код статьи: 2776344 - Последний отзыв: 18 февраля 2013 г. - Revision: 3.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft SQL Server 2008 R2 Service Pack 2 на следующих платформах
    • Microsoft SQL Server 2008 R2 Datacenter
    • Microsoft SQL Server 2008 R2 Enterprise
    • Microsoft SQL Server 2008 R2 Developer
    • Microsoft SQL Server 2008 R2 Standard
    • Microsoft SQL Server 2008 R2 Workgroup
    • Microsoft SQL Server 2008 R2 Web
    • Microsoft SQL Server 2008 R2 Express
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Express
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
  • SQL Server 2012 Enterprise Core
Ключевые слова: 
kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB2776344 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке: 2776344

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com