On a server running SQL Server 2008 R2 10.50.1600.
We have not configured Resource Governor for custom workloads on this server. However, we have received several of the following errors across various SPIDs at the same time this morning.
Failed to run resource governor classifier user-defined function. See previous errors in SQL Server error log from session ID 1510 for details. Classifier elapsed time: 209152 ms.
Failed to run resource governor classifier user-defined function. See previous errors in SQL Server error log from session ID 1209 for details. Classifier elapsed time: 349159 ms.
I'm aware that Resource Governor is on by default, using the internal and default pools. We also have a logon trigger on the server, this has been running for several months without issue; but I appreciate this could cause an issue so I have included
the code for the logon trigger below.
There's nothing else in the SQL Server logs or the Windows logs at this point in time. Any pointers in where to look next to troubleshoot this would be greatly appreciated!
Thanks
Matthew
Logon trigger code:-
--alter the trigger to perform single row inserts and to rollback if a login is set to refuse connection
CREATE TRIGGER [ltr_AuditLoginDetails]
ON ALL SERVER WITH EXECUTE AS 'LoginAuditing'
FOR LOGON
AS
BEGIN
--check that the login and hostname combination isn't expected, and that the current login is a sql server login not a windows login
IF EXISTS (SELECT ltm.PrincipalName
FROM DBManager.LoginAuditing.LoginsToMonitor ltm
WHERE ltm.PrincipalName = ORIGINAL_LOGIN())
BEGIN
--if the login and hostname combination are not permitted, log the details of the connection
IF NOT EXISTS (SELECT 1
FROM DBManager.LoginAuditing.PermittedLoginHostNames plhn
WHERE plhn.PrincipalName = ORIGINAL_LOGIN()
AND plhn.HostName = HOST_NAME())
BEGIN
--if the login must exist in the login/hostname combination, rollback the transaction
IF EXISTS (SELECT 1
FROM DBManager.LoginAuditing.LoginsToMonitor ltm
WHERE ltm.PrincipalName = ORIGINAL_LOGIN()
AND ltm.RefuseConnection = 1)
ROLLBACK -- this will prevent the login from connecting
--insert the login attempt into the logging table; this will be committed as occurs after the rollback
INSERT INTO DBManager.LoginAuditing.LoginAuditDetails
DEFAULT VALUES
END
END
END