powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Проблема с настройкой resource governor в MS SQL 2017
9 сообщений из 9, страница 1 из 1
Проблема с настройкой resource governor в MS SQL 2017
    #39856919
Max_11111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Исходное обсуждение: https://www.sql.ru/forum/1316231/ssis-neponyatnaya-oshibka-svyazi-s-ms-sql-cherez-ole-db-konnektor
По непонятной причине resource governor иногда ломается и обрывает подключения:
Код: plaintext
1.
2.
3.
4.
2019-08-28 15:19:00.38 spid151     Process ID 153 was killed by hostname SERVERNAME, host process ID 6252.
2019-08-28 15:19:00.38 spid153     Ошибка: 10982, серьезность: 16, состояние: 1.
2019-08-28 15:19:00.38 spid153     Failed to run resource governor classifier user-defined function 'dbo.RGGroup'. Last error 3602, state 135. 
See previous errors in SQL Server error log from session ID 153 for details.  Classifier elapsed time: 0 ms.
Происходит это с интервалом пару раз в сутки, возможно в периоды высокой нагрузки.
Настройки RG ниже:
Функция:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
CREATE FUNCTION [dbo].[RGGroup]()
RETURNS SYSNAME
WITH SCHEMABINDING
AS
BEGIN
DECLARE @WorkloadGroup AS SYSNAME
SELECT TOP 1
       @WorkloadGroup = 
	  CASE
                            WHEN IS_SRVROLEMEMBER ('rgAdminUsers') = 1
                                THEN 'PoolAdminUsersGroup'
                            WHEN IS_SRVROLEMEMBER ('rgDWHUsers') = 1
                                THEN 'PoolDWHUsersGroup'
                            WHEN IS_SRVROLEMEMBER ('rgDNSUsers') = 1
                                THEN 'PoolDNSUsersGroup'
                            ELSE 'default'
                        END;

RETURN @WorkloadGroup
END


Пулы:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
CREATE RESOURCE POOL PoolDNSUsers 
WITH (  
     MIN_CPU_PERCENT = 0,  
     MAX_CPU_PERCENT = 20,  
     CAP_CPU_PERCENT = 20,       
     MIN_MEMORY_PERCENT = 0,  
     MAX_MEMORY_PERCENT = 20  
      );  

CREATE RESOURCE POOL PoolDWHUsers 
WITH (  
     MIN_CPU_PERCENT = 0,  
     MAX_CPU_PERCENT = 90,  
     MIN_MEMORY_PERCENT = 0,  
     MAX_MEMORY_PERCENT = 90  
      );  
	 
CREATE RESOURCE POOL PoolAdminUsers 
WITH (  
     MIN_CPU_PERCENT = 0,  
     MAX_CPU_PERCENT = 100,        
     MIN_MEMORY_PERCENT = 0,  
     MAX_MEMORY_PERCENT = 100  
      );  

USE [master]
GO

/******  ******/
CREATE WORKLOAD GROUP [PoolDNSUsersGroup] WITH(group_max_requests=0, 
		importance=Medium, 
		request_max_cpu_time_sec=0, 
		request_max_memory_grant_percent=25, 
		request_memory_grant_timeout_sec=0, 
		max_dop=0) USING [PoolDNSUsers], EXTERNAL [default]
GO

/******  ******/
CREATE WORKLOAD GROUP [PoolDWHUsersGroup] WITH(group_max_requests=0, 
		importance=Medium, 
		request_max_cpu_time_sec=0, 
		request_max_memory_grant_percent=40, 
		request_memory_grant_timeout_sec=0, 
		max_dop=0) USING [PoolDWHUsers], EXTERNAL [default]
GO
/******  ******/
CREATE WORKLOAD GROUP [PoolAdminUsersGroup] WITH(group_max_requests=0, 
		importance=Medium, 
		request_max_cpu_time_sec=0, 
		request_max_memory_grant_percent=100, 
		request_memory_grant_timeout_sec=0, 
		max_dop=0) USING [PoolAdminUsers], EXTERNAL [default]
GO



Итоговый:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
USE [master]
GO

ALTER RESOURCE GOVERNOR WITH (CLASSIFIER_FUNCTION = [dbo].[RGGroup]);
GO

ALTER RESOURCE GOVERNOR WITH (MAX_OUTSTANDING_IO_PER_VOLUME = DEFAULT);
GO

ALTER RESOURCE GOVERNOR RECONFIGURE;
GO


Учётка, для которой подключение иногда обрывается, попадает в группу PoolAdminUsersGroup.
Когда отключаю GOVERNOR - всё прекрасно работает.

В чём может быть проблема?
...
Рейтинг: 0 / 0
Проблема с настройкой resource governor в MS SQL 2017
    #39857025
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Проблема с настройкой resource governor в MS SQL 2017
    #39857161
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Max_11111,

не может выполнить dbo.RGGroup и
See previous errors in SQL Server error log from session ID 153 for details.

Смотрите, что в еррорлоге (dafault trace).
...
Рейтинг: 0 / 0
Проблема с настройкой resource governor в MS SQL 2017
    #39857784
Max_11111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_One,

проверил, всё в норме
Переписал функцию, top не нужен:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
ALTER FUNCTION [dbo].[RGGroup]()
RETURNS SYSNAME
WITH SCHEMABINDING
AS
BEGIN
	RETURN CASE
        WHEN IS_SRVROLEMEMBER ('rgAdminUsers') = 1	THEN 'PoolAdminUsersGroup'
        WHEN IS_SRVROLEMEMBER ('rgDWHUsers') = 1	THEN 'PoolDWHUsersGroup'
        WHEN IS_SRVROLEMEMBER ('rgDNSUsers') = 1	THEN 'PoolDNSUsersGroup'
        ELSE 'default'
    END

END
...
Рейтинг: 0 / 0
Проблема с настройкой resource governor в MS SQL 2017
    #39857785
Max_11111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владислав Колосов,

В том то и дело, что в Error логе нет никакой информации по этому, либо по любым, произошедшим перед ним (или после него) событиям.
...
Рейтинг: 0 / 0
Проблема с настройкой resource governor в MS SQL 2017
    #39857798
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
убивает ваш процесс:

2019-08-28 15:19:00.38 spid 151 Process ID 153 was killed by hostname SERVERNAME, host process ID 6252 .

поэтому дальше идёт ошибка:

2019-08-28 15:19:00.38 spid 153 Ошибка: 10982, серьезность: 16, состояние: 1.
2019-08-28 15:19:00.38 spid 153 Failed to run resource governor classifier user-defined function 'dbo.RGGroup'. Last error 3602, state 135. See previous errors in SQL Server error log from session ID 153 for details. Classifier elapsed time: 0 ms.

Надо разбираться что за процесс (host process ID 6252) в этот момент на сервере и что он делает, может есть ошибки в системном логе ОС
...
Рейтинг: 0 / 0
Проблема с настройкой resource governor в MS SQL 2017
    #39858230
Max_11111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_One,

6252 - это SQL агент. В нём крутится Job по отключению зависших запросов и старых сессий, но в нём указан фильтр на эту учётку. Если бы даже этот Job убивал сессию, то я получал бы не одну ошибку, а десятки, т.к. в этот момент запускается множество мелких параллельных запросов под одной сессией

Кто знает, какое событие логирует выполнение "kill session_id"?
...
Рейтинг: 0 / 0
Проблема с настройкой resource governor в MS SQL 2017
    #39858263
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сложно сказать, что там за проблема, но было такое когда-то с 2008 R2 тупил несколько секунд у некоторых при переключении и эти ошибки сыпались (поищите, народ писал про такое поведение).

PS
и может стоит накатить CU16 14.0.3223.3 на сервер

PS PS
а если job временно выключить и посмотреть как будет себя вести?
...
Рейтинг: 0 / 0
Проблема с настройкой resource governor в MS SQL 2017
    #39858358
Max_11111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_One,

Обсуждение вроде нашёл: https://www.sql.ru/forum/1021476-a/sql-server-2008-r2-uzhasno-tupit-posle-perezapuska
только на эту проблему даже внимания не обратили :(

CU16 попробую позже, но в описании исправленных ошибок нет ничего похожего.

Job отключил, посмотрю что получится
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Проблема с настройкой resource governor в MS SQL 2017
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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