Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 MS SQL Server 2012 не хватает ресурсов для выполнения запроса.  [new]
blonduser
Member

Откуда:
Сообщений: 132
Всем доброго времени суток.

Хранимая процедура на вход принимает список id записей и по этим id меняет статус записи в БД.

В одном из запросов кол-во id превысило 9000.
На SQL 2008 все отрабатывается без проблем, да же на самом медленном.

При выполнении на SQL 2012 возникает ошибка:

"Сообщение 8623, уровень 16, состояние 1, строка 2
Обработчик запросов исчерпал внутренние ресурсы, и ему не удалось предоставить план запроса. Это редкое событие, которое может происходить только при очень сложных запросах или запросах, которые обращаются к очень большому числу таблиц или секций. Упростите запрос. Если предполагается, что это сообщение получено по ошибке, свяжитесь со службой поддержки для получения дополнительных сведений."


Как можно устранить эту ошибку?
Разбивку на много маленьких запросов не предлагать. На SQL 2008 все работает корректно.

Как увеличить "ресурсы"?

Два 8 ядерных проца. Память 32 ГБ. В настройках уменьшил до 16 ГБ.

Спасибо.
29 июн 17, 11:33    [20599036]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Server 2012 не хватает ресурсов для выполнения запроса.  [new]
AlanDenton
Member [скрыт]

Откуда:
Сообщений: 1004
Запрос покажите и с какими параметрами передаете
29 июн 17, 11:35    [20599044]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Server 2012 не хватает ресурсов для выполнения запроса.  [new]
blonduser
Member

Откуда:
Сообщений: 132
Запрос:

INSERT INTO TStatus (id, status)
SELECT [id], 1 FROM TMain WHERE [id] IN (3146504,...,2034289)
EXCEPT
SELECT [id], 1
FROM TStatus
WHERE [id] IN (3146504,...,2034289) AND status = 1;
29 июн 17, 11:51    [20599123]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Server 2012 не хватает ресурсов для выполнения запроса.  [new]
invm
Member

Откуда: Москва
Сообщений: 9344
Известная беда. Случается с любителями городить громадные списки в IN.
https://blogs.technet.microsoft.com/mdegre/2012/03/13/8623-the-query-processor-ran-out-of-internal-resources-and-could-not-produce-a-query-plan/
29 июн 17, 11:52    [20599126]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Server 2012 не хватает ресурсов для выполнения запроса.  [new]
komrad
Member

Откуда:
Сообщений: 5244
blonduser,

ссылка номер 1 в гугле

https://blogs.technet.microsoft.com/mdegre/2012/03/13/8623-the-query-processor-ran-out-of-internal-resources-and-could-not-produce-a-query-plan/
29 июн 17, 11:53    [20599132]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Server 2012 не хватает ресурсов для выполнения запроса.  [new]
blonduser
Member

Откуда:
Сообщений: 132
Спасибо. Будем разбивать.
29 июн 17, 11:57    [20599143]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить