powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Чудеса с SP
6 сообщений из 6, страница 1 из 1
Чудеса с SP
    #32024741
chenosov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сегодня произошел странный случай. Стал подвисать сервер, да так, что даже мышью не двинуть.
Выясняю, что это происходит при выполнениии довольно сложного Select в одной из SP.
Вытаскиваю SP в QA и делаю из нее скрипт (убираю заголовок, объявляю параметры, как переменные, и присваиваю им нужные значения). Выполняю скрипт - все в порядке. Там же в QA выполняю SP - не завершается и продолжает подвешивать всю систему в целом.
Процедура последнее время не менялась.
Что бы это могло означать, где рыть?
SQL 7.0 SP3
...
Рейтинг: 0 / 0
Чудеса с SP
    #32024755
qwerty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
обновите статистику бд, должно помочь
...
Рейтинг: 0 / 0
Чудеса с SP
    #32024760
Фотография cvasil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно еще попробовать перекомпилилять процедуру,
или, если в ней имеются существенные ветвления,
использовать with recompile.

В любом случае, сначала имеет смысл сравнить планы выполнения батча и процедуры.
Возможно это сразу подскажет в чем проблема.
...
Рейтинг: 0 / 0
Чудеса с SP
    #32024770
chenosov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все это я проделал, однако, результат тот же.
Планы я сравнить пока не могу, потому что процедура выполняется вот уже 12 минут!
Батч проходит за 40 сек (это нормальное время выполнения процедуры до вчерашнего дня).
...
Рейтинг: 0 / 0
Чудеса с SP
    #32024774
chenosov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выполнение закончилось через 16 минут!
План был, действительно, на столько чудовищный, что мне не пришло бы и в голову.
Вообще, я замечаю, что если запрос содержит вложенные запросы в JOIN- ах, то все работает гораздо медленнее, нежели ты сначала создаешь временные таблицы, т.е. как бы сам предопределяешь план всей операции. Т.е. я был слишком хорошего мнения об оптимизаторе.
А ваше мнение?
...
Рейтинг: 0 / 0
Чудеса с SP
    #32024775
Alexander_Chepack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Последнее время я часто с этой проблемой сталкиваюсь - как на семерке, так и на SQL2K -
справедливости ради надо отметить, что такая проблема (разные планы и производительность
для процедуры и аналогичного скрипта) характерна для кривых процедур - если я пишу
процедуру все работает нормально, а вот разработчики наши иногда приносят такое -
типа 5 временных таблиц, 10 курсоров и текст на 7 страниц - вот с такими процедурами
такой геморрой случается часто.

Но все-равно - неприятная проблема, обновление статистики не помогает.
Вот вчера пришлось в такой процедуре явно руками план для джойна задавать.

Еще одна раздражающая мелочь - если используешь синтакс:

... inner loop join ... - то SQL возвращает предупреждения что план был установлен
"насильно" и никак их отключить не удается - некоторые приложения на VB этого
не любят.

Если же устанавливаешь план через option(loop join) - то никаких сообщений
не генерится.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Чудеса с SP
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]