Запрос был отменён потому что расчетные затраты на его выполнение превышают установленный порог
На скриншоте была попытка сделать тестирование и исправление. Эта же ошибка появляется при выгрузке в весы и установке цен номенклатуры. При этом ошибка постепенно разрастается, т. е. если в первый день у одной торговой точки не проходила выгрузка в весы (думали по началу, что дело в них), то на третий день у 10-ти точек не работает выгрузка в весы и не проводится установка цен.
На скриншоте внизу слева видно имя таблицы, на которой тестирование и исправление "спотыкается" (всегда на одном и том же). На следующем скриншоте видно, что это регистр сведений "Двоичные данные файлов". В нём хранятся сообщения обмена с ЕГАИС, там около 485000 записей.
Пробовали:
1. Повышать порог - не помогает, та же ошибка.
2. Полностью снять ограничение по времени - выгрузка идёт бесконечно, у других пользователей блокируется работа с базой (превышено время ожидания запроса на блокировку).
3. Выгружать dt базы и загружать в новую базу данных - нет эффекта.
4. Делали переиндексацию конкретной таблицы на которой появляется ошибка. Есть небольшой прогресс. До этого через консоль запросов пытались получить данные с этого регистра и вываливалась та же самая ошибка. После переиндексации ошибка в консоли ушла, но осталась в тестировании и исправлении
В какую сторону ещё стоит копнуть?
На скриншоте внизу слева видно имя таблицы, на которой тестирование и исправление "спотыкается" (всегда на одном и том же). На следующем скриншоте видно, что это регистр сведений "Двоичные данные файлов". В нём хранятся сообщения обмена с ЕГАИС, там около 485000 записей.
Пробовали:
1. Повышать порог - не помогает, та же ошибка.
2. Полностью снять ограничение по времени - выгрузка идёт бесконечно, у других пользователей блокируется работа с базой (превышено время ожидания запроса на блокировку).
3. Выгружать dt базы и загружать в новую базу данных - нет эффекта.
4. Делали переиндексацию конкретной таблицы на которой появляется ошибка. Есть небольшой прогресс. До этого через консоль запросов пытались получить данные с этого регистра и вываливалась та же самая ошибка. После переиндексации ошибка в консоли ушла, но осталась в тестировании и исправлении
В какую сторону ещё стоит копнуть?
Прикрепленные файлы:



Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(6)CHECKDB не выдал никаких ошибок. Посмотрел план запроса трассировкой через Profilerи обнаружил, что 98% времени занимает Clustered Index Scan. В чём может быть проблема? Фрагментация страниц 0,01% - делал полное перестроение индекса как для всей базы, так и этой конкретной таблицы
Прикрепленные файлы:

(4) ну кластер индекс скан = тэйбл скан, фактически. Идет просмотр всей таблицы для поиска полей в где, которые не входят в индекс (поиск не по объекту, например, а по какому-то другому измерению, для которого нет индекса). Емли это типовой зарос, то разработчики типовык какими бы крутыми не были, в продуктовой разработке сильны не все. Если это ваш запрос, то добавьте объект в где или в соединение.
(8)Это в тестировании и исправлении, не могу точно сказать какой запрос со стороны 1С выполняется и оптимизировать его не могу. Пока искал решение, обнаружил, что этот механизм называется "регулятор запросов", он не даёт выполняться "долгим" запросам. Везде его предлагают отключить (в том числе и на Stackoverflow). Пока что так и сделаю, но раньше то проблемы не было. Почему она возникла? В какую сторону стоит копать? Индексы перестроил, статистику обновил, кэш чистил...
(1) EXEC sys.sp_configure N'remote query timeout (s)', N'0'
GO
RECONFIGURE WITH OVERRIDE
GO
SET QUERY_GOVERNOR_COST_LIMIT 0
GO
если таблица, на которой спотыкается 1С большая по размеру, то свернуть до текущего года
ресурсов лимитатор не дает на действия конфигуратора, соответственно увеличить ресурсы, что тут сложного
GO
RECONFIGURE WITH OVERRIDE
GO
SET QUERY_GOVERNOR_COST_LIMIT 0
GO
если таблица, на которой спотыкается 1С большая по размеру, то свернуть до текущего года
ресурсов лимитатор не дает на действия конфигуратора, соответственно увеличить ресурсы, что тут сложного
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот