Работа моего агента SQL выполняется каждое утро в 4 часа утра. Он имеет 10 шагов.
Последние несколько недель с ошибкой пару раз в неделю на шаге 3 с этой ошибкой.
Поставщик OLE DB "SQLNCLI11" для связанного сервера "RemoteServerName"
сообщил об ошибке.
Исполнение прекращено поставщиком, потому что
предел ресурсов был достигнут. [SQLSTATE 42000] (ошибка 7399)
Невозможно получить набор строк от поставщика OLE DB "SQLNCLI11" для связанного сервера.
"RemoteServerName". , [SQLSTATE 42000] (Ошибка 7421)
Поставщик OLE DB "SQLNCLI11" для связанного сервера "RemoteServerName" вернул сообщение "Запрос
истекло время ожидания ". [SQLSTATE 01000] (ошибка 7412). Шаг не выполнен.
При успешном выполнении шага 3 продолжительность составляет от 1 до 7 минут.
При сбое шага 3 продолжительность составляет от 12 до 15 минут.
Для обоих серверов SQL «Время ожидания удаленного запроса» установлено равным 600 секундам (10 минутам).
Весь шаг 3, как ни странно, является простым оператором DELETE.
DELETE FROM [RemoteServerName].DbNameHere.dbo.CompanyProductLink_Copy
Если для тайм-аута установлено значение 10 минут, а в сообщении об ошибке указано «истекло время ожидания запроса», почему длительность шага варьируется от 12 до 15 минут?
Есть ли более эффективный способ удаления ~ 1 000 000 записей из удаленной таблицы?
Я могу довольно легко увеличить время ожидания ... Я просто хочу понять,
Запуск SQL Server v12 на твердотельных накопителях с выделенным ОЗУ 24 ГБ.