Корпорация Майкрософт распространяет исправления Microsoft SQL Server 2008 R2 в виде одного загружаемого файла. Поскольку исправления являются накопительными, каждый новый выпуск содержит все исправления и исправления для системы безопасности, которые были включены в предыдущий выпуск исправления SQL Server 2008 R2.
Проблема
Рассмотрим следующий сценарий.
- На компьютере с Microsoft SQL Server 2008 или Microsoft SQL Server 2008 R2 используется параметр с табличным значением (TVP), содержащий множество строк.
- На сервере используется SQL Profiler или расширенные события SQL Server.
- Запрос запускается совместно, используя TVP.
В этом сценарии возникает ошибка планировщика, не возвращающего данные, и запросы, уже выполняемые в том же планировщике, выполняются медленно. Кроме того, в папке журнала SQL Server создается мини-файл дампа.
Причина
Эта проблема возникает из-за ошибки в ядре СУБД SQL Server. Текстовые столбцы в TVP реализованы в виде строк вставки или буферов, а увеличение количества строк увеличивает количество буферов. Однако процесс освобождения буферов занимает много времени. Поэтому при выполнении операций выпуска и сжатия возникает ошибка планировщика, не возвращающая урожай.
Решение
Чтобы устранить эту проблему в SQL Server 2008 R2, используйте один из следующих способов:
- Установите накопительный пакет обновления 7 для SQL Server 2008 R2.
- Установите следующий пакет исправлений.
Чтобы обойти эту проблему в SQL Server 2008 R2 или SQL Server 2008, см. раздел "Временное решение".
Сведения о накопительном пакете обновления
SQL Server 2008 R2
Исправление для этой проблемы впервые выпущено в накопительном пакете обновления 7. Для получения дополнительной информации о том, как получить этот накопительный пакет обновления для SQL Server 2008 R2, откройте статью со следующим номером в базе знаний Майкрософт:
Пакет накопительного обновления 2507770 7 для SQL Server 2008 R2 Примечание. Поскольку сборки являются накопительными, каждый новый выпуск исправления содержит все исправления и все исправления безопасности, которые были включены в предыдущий выпуск исправления SQL Server 2008 R2. Рекомендуется рассмотреть возможность применения последнего выпуска исправления, содержащего это исправление. Для просмотра статьи в базе знаний Майкрософт щелкните следующий номер статьи:
981356 Сборки SQL Server 2008 R2, выпущенные после выпуска SQL Server 2008 R2
Сведения об исправлениях
Поддерживаемое исправление доступно от корпорации Майкрософт. Однако это исправление предназначено только для устранения проблемы, описанной в этой статье. Применяйте это исправление только к системам, в которых возникает проблема, описанная в этой статье. Это исправление может пройти дополнительное тестирование. Поэтому, если вы не серьезно затронуты этой проблемой, мы рекомендуем вам дождаться следующего обновления программного обеспечения, содержащего это исправление.
Если исправление доступно для скачивания, в верхней части этой статьи базы знаний отобразится раздел "Доступно скачивание исправлений". Если этот раздел не отображается, обратитесь в службу поддержки пользователей Майкрософт для получения исправления.
Примечание Если возникнут дополнительные проблемы или потребуется их устранение, может потребоваться создать отдельный запрос на обслуживание. Обычные расходы на поддержку будут применяться для решения дополнительных вопросов поддержки и проблем, не подпадающих под это исправление. Полный список телефонных номеров службы поддержки и обслуживания клиентов Майкрософт или создание отдельного запроса на обслуживание см. на следующем веб-сайте Майкрософт:
/contactus/?ws=support Примечание. В форме "Доступно скачивание исправления" указаны языки, для которых доступно исправление. Если вы не видите свой язык, это означает, что для него недоступно исправление.
Необходимые условия
Для применения этого исправления необходимо установить Microsoft SQL Server 2008 R2.
Необходимость перезапуска
После применения этого исправления перезапускать компьютер не требуется.
Сведения о замене исправлений
Это исправление не заменяет ранее выпущенное исправление.
Сведения о файлах
Его версия содержит атрибуты файла (или более поздние атрибуты файла), перечисленные в следующей таблице. Значения даты и времени для этих файлов указаны в формате UTC. При просмотре сведений о файлах выполняется перевод соответствующих значений в местное время. Чтобы узнать разницу между временем UTC и местным временем, откройте вкладку "Часовой пояс" элемента "Дата и время" на панели управления.
Для всех поддерживаемых x86-разрядных версий SQL Server 2008 R2
| Имя файла | Версия файла | Размер файла | Дата | Время | Платформа |
|---|---|---|---|---|---|
| Sqlservr.exe | 2009.100.1769.0 | 42,919,776 | 22 марта 2011 г. | 19:37 | x86 |
Для всех поддерживаемых 64-разрядных версий SQL Server 2008 R2
| Имя файла | Версия файла | Размер файла | Дата | Время | Платформа |
|---|---|---|---|---|---|
| Sqlservr.exe | 2009.100.1769.0 | 61,974,880 | 22 марта 2011 г. | 18:46 | x64 |
Для всех поддерживаемых версий IA-64 SQL Server 2008 R2
| Имя файла | Версия файла | Размер файла | Дата | Время | Платформа |
|---|---|---|---|---|---|
| Sqlservr.exe | 2009.100.1769.0 | 121,813,856 | 22 марта 2011 г. | 18:14 | ИА-64 |
Временное решение
Для временного решения этой проблемы используйте один из следующих способов:
- Не используйте профилировщик SQL или расширенные события SQL Server.
- Щелкните, чтобы очистить поля проверки RPC:Starting и RPC:Completed в определении трассировки.
Состояние
Корпорация Майкрософт подтвердила, что это проблема продуктов Microsoft, перечисленных в разделе «Относится к».
Дополнительные сведения
Дополнительные сведения о TVP см. на следующем веб-сайте MSDN:
Общая информация о TVP Дополнительные сведения о SQL Profiler см. на следующем веб-сайте MSDN: