Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

MySql.Data.MySqlClient.MySqlException: Timeout expired

In recent times, a particular page in my web app throws the

Exception Details: MySql.Data.MySqlClient.MySqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.

Though I use Ibtais as persistence layer, this error occurs. I have restarted the MySql service instance but stil i get the same error. It didn't happen earlier but happens frequently in recent times.

All the web applications deployed on the server uses Ibatis and the DB server remains on the same machine where IIS is installed. There are about 8000 records in which around 300 to 500 would be filtered on page load

Any insights for the cause of the problem?

like image 782
Gopi Avatar asked Aug 13 '10 10:08

Gopi


People also ask

How do I fix MySQL timeout expired?

The default command timeout is 30 seconds, but you can change this like so: MySqlCommand cmd = new MySqlCommand(); cmd. CommandTimeout = 60; You can also set the command timeout to zero in order to make MySQL wait indefinitely for results to come back.

What is the default MySQL connection timeout?

MySQL has its wait_timeout variable default value set to 28800 seconds (8 hours). Therefore, if both sides of the connection still keep the defaults, the problem will never happen, as MySQL will never timeout a connection before Stash does it.


2 Answers

I encountered the same problem with yours, and I found this MySQLConnection--Specifying default command timeout.

Just add "default command timeout=xxx" into your connectString, this key's value is in seconds.
I tried and it worked for me.

like image 107
Raven Avatar answered Sep 29 '22 08:09

Raven


You could set command timeout to 0, its not a good idea though. Some requests could go on indefinitely.

There is an underlying problem that is causing the queries to time out in the first place. Are you inserting, updating, or in any way working with large binary values that would lock the table? That is the most common reason I see for an error like this on such a small amount of data.

like image 23
Dabloons Avatar answered Sep 29 '22 10:09

Dabloons