Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Зависимость скорости исполнения запроса от прав пользователя  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 4902
Столкнулись сегодня с такой ситуацией.

Написали запрос к логам SSIS на базе SSISDB. Запрос простой, так TOP 100 из логов вывести.

SELECT TOP 100
	p2.name,
	p.name,
	msg.*
FROM [SSISDB].[catalog].[event_messages] msg
INNER JOIN [catalog].[packages] AS p ON msg.message_source_id = p.package_guid
INNER JOIN [catalog].projects AS p2 ON p2.project_id = p.project_id


Но возникла такая ситуация, у меня админские права и запрос через несколько секунд начинает выдавать какие-то строки. У другого человека (дали ему сначала Server Admin права) запрос исполняется невероятно долго, за 27 минут -- ничего не вернул. Дали ему админские права, запрос также как и у меня возвращает первые строки уже через несколько секунд.

Вопрос, почему без админстких прав наблюдается такое зависание. Если доступа бы вообще не было, запрос наверное по ошибке бы отвалился. Мне интересно, откуда берется зависимость скорости исполнения (или блокировка) в зависимости от роли, которую имеет пользователь.
27 окт 14, 17:20    [16764497]     Ответить | Цитировать Сообщить модератору
 Re: Зависимость скорости исполнения запроса от прав пользователя  [new]
tarrus
Member

Откуда: Bergen
Сообщений: 831
a_voronin,

Так объяснение в определении этих представлений.
27 окт 14, 17:35    [16764549]     Ответить | Цитировать Сообщить модератору
 Re: Зависимость скорости исполнения запроса от прав пользователя  [new]
Slava_Nik
Member

Откуда: из России
Сообщений: 901
a_voronin
Столкнулись сегодня с такой ситуацией.

Написали запрос к логам SSIS на базе SSISDB. Запрос простой, так TOP 100 из логов вывести.

SELECT TOP 100
	p2.name,
	p.name,
	msg.*
FROM [SSISDB].[catalog].[event_messages] msg
INNER JOIN [catalog].[packages] AS p ON msg.message_source_id = p.package_guid
INNER JOIN [catalog].projects AS p2 ON p2.project_id = p.project_id


Но возникла такая ситуация, у меня админские права и запрос через несколько секунд начинает выдавать какие-то строки. У другого человека (дали ему сначала Server Admin права) запрос исполняется невероятно долго, за 27 минут -- ничего не вернул. Дали ему админские права, запрос также как и у меня возвращает первые строки уже через несколько секунд.

Вопрос, почему без админстких прав наблюдается такое зависание. Если доступа бы вообще не было, запрос наверное по ошибке бы отвалился. Мне интересно, откуда берется зависимость скорости исполнения (или блокировка) в зависимости от роли, которую имеет пользователь.

вызываете как этот код, через что ?

смотрите планы выполнения под каждым пользователем.
Скорее всего вы используете индексы, а он нет. Почему? потому что у него нет прав на просмотр статистики по таблице, думаю так.
27 окт 14, 21:45    [16765337]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить