Странности с запросом.

VitLF
Дата: 15.02.2013 10:18:04
ОС Microsoft Windows Server 2003, Standard Edition x64 с СУБД Microsoft SQL Server 2008 R2 (SP2) - 10.50.4000.0 (X64).

У пользователей время от времени при обработки одного и того же запроса увеличивается во много раз время выполнения. То он выполняется мгновенно, то время увеличивается до минуты. Профайлером засечь удалось только вот это, FETCH API_CURSOR00000000001F3D8D , которое как раз и выполняется до минуты (По профайлеру: Duration 66309, Reads 77749283. CPU 66140, что по показателям больше всего остального отработанного). БД регламентно обслуживается, индексы в зависимости от фрагментации перестраиваются.
Можете объяснить, что это? Что это за курсор?
Гость333
Дата: 15.02.2013 10:39:42
VitLF
Дата: 15.02.2013 11:03:12
Так это вопросы так понимаю к разработчикам, насчёт курсора?
Гость333
Дата: 15.02.2013 11:24:22
VitLF
Так это вопросы так понимаю к разработчикам, насчёт курсора?

А ваша роль в проекте какая?
Ссылку смотрели? Описанный там способ не помог?
VitLF
Дата: 15.02.2013 11:28:30
Гость333
VitLF
Так это вопросы так понимаю к разработчикам, насчёт курсора?

А ваша роль в проекте какая?
Ссылку смотрели? Описанный там способ не помог?


Смотрел. Можно как-то пожалуйста растолковать ссылку, а то не совсем понятно.
ROLpogo
Дата: 15.02.2013 13:29:23
VitLF,

По той ссылке показано, как можно узнать текст запроса, приведшего к вашей беде.
VitLF
Дата: 15.02.2013 14:03:57
ROLpogo
VitLF,

По той ссылке показано, как можно узнать текст запроса, приведшего к вашей беде.


Да. Спасибо. Разобрался.
Вот только, зная запрос, непонятны дальнейшие шаги по оптимизации. План выполнения показывает оценку (cost) в 0,5. Вродь не тяжёлый запрос. Т.е. как и говорил, то он выполняется мгновенно, то весит по 30 сек - минуте.
VitLF
Дата: 15.02.2013 14:05:38
Может подскажите, что эта за мистика может происходить. И почему именно на этом запросе, на остальных таких проблем нет.
Гость333
Дата: 15.02.2013 14:09:53
VitLF,

Запрос может медленно выполняться, например, из-за блокировок. Или из-за неоптимального плана выполнения. Или из-за неудачного сочетания параметров запроса.
В общем, надо смотреть текст запроса и план его выполнения.