SqlClient Data Provider too many processes per user
Posted on 2009-04-01
ASP.NET (2.0 and 3.5)
VS2008 (and VS2005)
SQL Server 2000 Standard
When running an aspx website connected to a SQL database (and after 3 page refreshes) I am getting this 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."
I check the sysprocesses using this query:
SELECT program_name, COUNT(*) AS Expr1
GROUP BY program_name
ORDER BY COUNT(*) DESC
this process ".Net SqlClient Data Provider" comes up as running more than 100 processes after refreshing the aspx page that makes the database connection and I am the only user on this system.
to prevent SQL Server timeout I add this to the connect string: "Min Pool Size=5;Max Pool Size=500;Connect Timeout=2;" and I can run without timing out.
Now the kicker: the same website on a different server runs only 1 ".Net SqlClient Data Provider" no matter how many page refreshes (which tells me the problem is not in the asp code but on some server configuration which on first checkup look the same).
Where do I need to look for this problem?