I have a application that keeps track of time for payroll. It was working up until a few days ago when end-users all of a sudden could not log back in. Users who were logged in do not seem to be logged out, there is no automatic closing of inactive sessions, however users who logged out could not log back in. We seem to hit a maximum connection limit somewhere and no other users are able to log back in, they get the following below error message.
This is not a network issue, because I tried to log in on the localhost and on the same network, still get same issue. When using a fake credential, it comes back with a wrong password prompt almost immediately. When using a correct username/password, it spins for about 30 seconds before giving us the "System.Data.SqlClient.SqlException (0x80131904): Timeout expired" error.
Where in the SQL database would I check for the underlying issue? Strangely, rebooting the server (both the application and database servers) did not seem to have helped, I thought it would have flushed the connections.
System.Data.SqlClient.SqlException (0x80131904): Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding. ---> System.ComponentModel.Win32Exception (0x80004005): The wait operation timed out
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
at REDACTED(IdType companyId, IdTypeList employeeIds, IdTypeList workedDepartmentIds, DateType startDate, DateType endDate, BooleanType IncludeHomeDepartmentInDepartmentVerification)