Проблемы
Если в приложениях, использующих брокер Microsoft SQL Server Service Broker, есть шаблон сообщения с одним сообщением для каждой беседы, вы заметите непредвиденный рост файлов данных tempdb . Этот шаблон напоминает шаблон "Fire-and-забыть", который обычно используется в приложениях для аудита. Если при возникновении этой ошибки вы запрашиваете динамическое административное представление sys.dm_db_task_space_usage , возможно, что значение "internal_objects_dealloc_page_count" не увеличивается на ту же ставку, что и "internal_objects_alloc_page_count" для идентификаторов сеансов, в которых выполняются внутренние задачи компонента Service Broker. Кроме того, пространство tempdb не освобождается даже после того, как все ожидающие беседы закрыты и очищены.
Причина
Расширение файлов данных вызывается в основном посредством константных вставок и обновлений в таблице sys. sysdesend . В этой ситуации файлы данных tempdb продолжают расти по мере использования компонента Service Broker.
Решение
Эта проблема устранена в Microsoft SQL server 2016.
Сведения о накопительном пакете обновления
Накопительное обновление 5 для SQL server 2012 с пакетом обновления 3 (SP3)накопительное обновление 10 для SQL Server 2014 SP1НАКОПИТЕЛЬное обновление 3 для SQL Server 2014 с пакетом обновления 2 (SP2 )
Все новые накопительные обновления для SQL Server содержат все исправления и все исправления для системы безопасности, которые были включены в предыдущий накопительный пакет обновления. Ознакомьтесь с последними накопительными обновлениями для SQL Server: Последнее накопительное обновление для SQL Server 2012 с пакетом обновления 1(SP3), Последнее накопительное обновление для SQL Server 2014 SP1/SP2
Дополнительная информация
Чтобы освободить пространство из tempdb, перезапустите службу SQL Server. Чтобы избежать этой проблемы, следуйте общим рекомендациям в разделе "методы повышения производительности и масштабируемости" в статье TechNet ниже.
Сервисный брокер: методики производительности и масштабируемости
Статус
Корпорация Майкрософт подтверждает, что это известная проблема, связанная с текущим дизайном компонента Service Broker.