План запросов в UDF постоянно меняется - PullRequest
0 голосов
/ 15 января 2020

Получился интересный вопрос, который я изо всех сил пытался решить уже несколько лет, и он становится все более серьезной проблемой. У нас есть UDF, который тщательно используется в нашей системе и возвращает единственное значение из таблицы журнала. Обычно он запускается мгновенно, однако периодически что-то происходит с его планом запроса, заставляя его работать в течение нескольких минут без возврата.

Мы обнаружили, что если мы перекомпилируем UDF, он снова работает.

Если я возвращаю план выполнения, я не получаю никакой информации, указывающей на проблему с индексом.

РЕДАКТИРОВАТЬ: Копия плана выполнения: https://filebin.net/jlxf0ejqeyz9j9b9

РЕДАКТИРОВАТЬ 2: Скриншоты exe c plan: снимок экрана 1: https://filebin.net/eula7cir72lp95iv/exec-screenshot1.png?t=0i8i2kyj

снимок экрана 2: https://filebin.net/yr2d84x5fftqjvnm/exec-screenshot2.png?t=um9ldpdk

EDIT 3: снимок экрана 3, наведенный на вызов функции: https://filebin.net/9azjdvb1mpmsi3am/exec-screenshot3.png?t=qjsemw6d

В настоящее время у нас есть задание, которое перебирает и перекомпилирует UDF каждые 30 минут, что, как я знаю, является просто ошибочным решением. Если у кого-то есть какие-либо рекомендации по дальнейшему устранению неполадок, я был бы очень признателен за ваше понимание!

К сожалению, эта проблема не всегда проявляется так часто, что мы не узнаем об этом, пока кто-то не укажет на это. .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...