powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / зависание внутри процедуры
7 сообщений из 7, страница 1 из 1
зависание внутри процедуры
    #39945791
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа, наблюдаю такую картину

Есть процедура, которая при своем старте завиcает на первом select into #temp from и висит около получаса.

Но если код процедуры вытащить в отдельное окно ssms и запустить как скрипт (без объявления процедуры, заменив параметры на переменные), то он отрабатывает за 30-60 сек. Данных там всего 1700000.

Код набивает данные в несколько временных таблиц и потом делает delete insert uppate в несколько других таблиц. BEGIN TRAN не используется. При открытии новой сессии картина не меняется.

Что это за явление и куда копать?

SQL 2012 Standart
...
Рейтинг: 0 / 0
зависание внутри процедуры
    #39945796
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Явление называется "разный план выполнения".
...
Рейтинг: 0 / 0
зависание внутри процедуры
    #39945809
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриленко Сергей Алексеевич,

WITH RECOMPILE не помогло, причем процедура пересоздавалась недавно
...
Рейтинг: 0 / 0
зависание внутри процедуры
    #39945810
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Перепутал версию сервера. Это 2019 DEV

Microsoft SQL Server 2019 (RTM-GDR) (KB4517790) - 15.0.2070.41 (X64) Oct 28 2019 19:56:59 Copyright (C) 2019 Microsoft Corporation Developer Edition (64-bit) on Windows Server 2016 Standard 10.0 <X64> (Build 14393: )
...
Рейтинг: 0 / 0
зависание внутри процедуры
    #39945820
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриленко Сергей Алексеевич
Явление называется "разный план выполнения".


У меня есть подозрение, что дело не в плане, а в блокировке на системной таблице или чем-то таком.

Если включить Живой план, она висит и очень долгое время его не отображает. То есть проблема скорее в том, чтобы получить план, а не в том, насколько он оптимален.
...
Рейтинг: 0 / 0
зависание внутри процедуры
    #39945847
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a_voronin,

Отсутствие живого плана в студии ни о чем не говорит.
Смотрите ожидания сессии в момент зависания.
...
Рейтинг: 0 / 0
зависание внутри процедуры
    #39945852
felix_ff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a_voronin,

sys.dm_os_waiting_tasks что нибудь показывает по "зависшей" сессии?
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / зависание внутри процедуры
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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