G
Guest
Hello
We have a strange problem that someone maybe could help us with.
We have an ASP.NET application (NET 2.0) that uses Enterprise Library (2.0)
and nHibernate (1.2.0). It’s compiled for any processor and runs in a native
x64 environment (2003 STE, IIS 6). It uses a SQL Server (05, x64, clustered
with active/passive).
The problem is that the SQL-Server in periods throws exceptions that
generate error messages, ADO.NET exceptions. If we use connection pooling we
get the following error:
“Timeout expired. The timeout period elapsed prior to obtaining a
connection from the pool. This may have occurred because all pooled
connections were in use and max pool size was reachedâ€.
If we turn off connection pooling we are getting the following exception
“An error has occurred while establishing a connection to the server. When
connecting to SQL Server 2005, this failure may be caused by the fact that
under the default settings SQL Server does not allow remote connections.
(provider: Named Pipes Provider, error: 40 - Could not open a connection to
SQL Server)â€
As we can see it, the second exception happens in the both scenarios
(pooling / no pooling), but when we use pooling the first thing that happens
is that the pool gets corrupted and after that the second exception is thrown.
During peak hours the exceptions is occurring within 5,10,15 and 20 minutes
intervals. We have turned off recycling of the worker process and uses inproc
session handling. During low use of the application the error also occurs but
of course not as frequent as under peak hours. We cant find anything
suspicious in the logs (IIS, EventViewer, SQL-Server). If we run performance
counters we don’t se anything indicating memory leaks / connection leaks. And
the thing that’s really confusing is that it only happens in intervals and
that the database connections works most of the time, the error indicates
that the SQL-Server does not allow remote connections, but most of the time
it does?
Before we turned off recycling of the application pool we hade another
strange thing happening. We increased the virtual memory to 1024Mb and turned
of recycling, which caused the worker process of the application to recycle
itself every five minute.
The application is in production environment so we don’t have any big
possibilities to do testing to a large extent.
Regards
Tobias HÃ¥kansson
Varchar AB
We have a strange problem that someone maybe could help us with.
We have an ASP.NET application (NET 2.0) that uses Enterprise Library (2.0)
and nHibernate (1.2.0). It’s compiled for any processor and runs in a native
x64 environment (2003 STE, IIS 6). It uses a SQL Server (05, x64, clustered
with active/passive).
The problem is that the SQL-Server in periods throws exceptions that
generate error messages, ADO.NET exceptions. If we use connection pooling we
get the following error:
“Timeout expired. The timeout period elapsed prior to obtaining a
connection from the pool. This may have occurred because all pooled
connections were in use and max pool size was reachedâ€.
If we turn off connection pooling we are getting the following exception
“An error has occurred while establishing a connection to the server. When
connecting to SQL Server 2005, this failure may be caused by the fact that
under the default settings SQL Server does not allow remote connections.
(provider: Named Pipes Provider, error: 40 - Could not open a connection to
SQL Server)â€
As we can see it, the second exception happens in the both scenarios
(pooling / no pooling), but when we use pooling the first thing that happens
is that the pool gets corrupted and after that the second exception is thrown.
During peak hours the exceptions is occurring within 5,10,15 and 20 minutes
intervals. We have turned off recycling of the worker process and uses inproc
session handling. During low use of the application the error also occurs but
of course not as frequent as under peak hours. We cant find anything
suspicious in the logs (IIS, EventViewer, SQL-Server). If we run performance
counters we don’t se anything indicating memory leaks / connection leaks. And
the thing that’s really confusing is that it only happens in intervals and
that the database connections works most of the time, the error indicates
that the SQL-Server does not allow remote connections, but most of the time
it does?
Before we turned off recycling of the application pool we hade another
strange thing happening. We increased the virtual memory to 1024Mb and turned
of recycling, which caused the worker process of the application to recycle
itself every five minute.
The application is in production environment so we don’t have any big
possibilities to do testing to a large extent.
Regards
Tobias HÃ¥kansson
Varchar AB