Core/DBLayer:

- Rewrite KeepAlive method for DatabaseWorkerPool. Use mysql_ping instead of explicit select queries, and also schedule KeepAlives for asynchronous threads.
NOTE: While the function is implemented and previous keepalive calls were transformed, it´s possible the keepalive call will need to be placed in several other locations in the code. Please leave feedback on whether or not this fixes your timeout issues.

Update issue #4062

--HG--
branch : trunk
This commit is contained in:
Machiavelli
2010-09-25 01:05:24 +02:00
parent 154d11acc0
commit 62946f9ef6
4 changed files with 34 additions and 2 deletions

View File

@@ -314,7 +314,7 @@ extern int main(int argc, char **argv)
{
loopCounter = 0;
sLog.outDetail("Ping MySQL to keep connection alive");
LoginDatabase.Query("SELECT 1 FROM realmlist");
LoginDatabase.KeepAlive();
}
#ifdef _WIN32
if (m_ServiceStatus == 0) stopEvent = true;