aboutsummaryrefslogtreecommitdiff
path: root/src/server/shared/Database
diff options
context:
space:
mode:
authorMachiavelli <machiavelli.trinity@gmail.com>2011-01-13 21:30:37 +0100
committerMachiavelli <machiavelli.trinity@gmail.com>2011-01-13 21:30:37 +0100
commitbd85914d92ccab255475dce9d4700abdc8428fb4 (patch)
tree6d8a41fdd0678ab31977c583c4987c348f401dec /src/server/shared/Database
parent4c15ebe09d51d22d98e314302652b66f345a56ff (diff)
Core/DBLayer: Properly manage mysql library initialization and shutdown in authserver and worldserver. Prevent multiple calls and make it more elegant.
Diffstat (limited to 'src/server/shared/Database')
-rwxr-xr-xsrc/server/shared/Database/DatabaseWorkerPool.h2
-rwxr-xr-xsrc/server/shared/Database/MySQLThreading.h14
2 files changed, 12 insertions, 4 deletions
diff --git a/src/server/shared/Database/DatabaseWorkerPool.h b/src/server/shared/Database/DatabaseWorkerPool.h
index 6c1be4c5a42..27a5c051ccb 100755
--- a/src/server/shared/Database/DatabaseWorkerPool.h
+++ b/src/server/shared/Database/DatabaseWorkerPool.h
@@ -58,14 +58,12 @@ class DatabaseWorkerPool
memset(m_connectionCount, 0, sizeof(m_connectionCount));
m_connections.resize(IDX_SIZE);
- mysql_library_init(-1, NULL, NULL);
WPFatal (mysql_thread_safe(), "Used MySQL library isn't thread-safe.");
}
~DatabaseWorkerPool()
{
sLog->outSQLDriver("~DatabaseWorkerPool for '%s'.", m_connectionInfo.database.c_str());
- mysql_library_end();
}
bool Open(const std::string& infoString, uint8 async_threads, uint8 synch_threads)
diff --git a/src/server/shared/Database/MySQLThreading.h b/src/server/shared/Database/MySQLThreading.h
index 40b524a2c44..33f24d9aba5 100755
--- a/src/server/shared/Database/MySQLThreading.h
+++ b/src/server/shared/Database/MySQLThreading.h
@@ -33,7 +33,7 @@ class MySQL
static void Thread_Init()
{
mysql_thread_init();
- printf("Core thread with ID ["UI64FMTD"] initializing MySQL thread.\n",
+ sLog->outSQLDriver("Core thread with ID ["UI64FMTD"] initializing MySQL thread.",
(uint64)ACE_Based::Thread::currentId());
}
@@ -44,9 +44,19 @@ class MySQL
static void Thread_End()
{
mysql_thread_end();
- printf("Core thread with ID ["UI64FMTD"] shutting down MySQL thread.\n",
+ sLog->outSQLDriver("Core thread with ID ["UI64FMTD"] shutting down MySQL thread.",
(uint64)ACE_Based::Thread::currentId());
}
+
+ static void Library_Init()
+ {
+ mysql_library_init(-1, NULL, NULL);
+ }
+
+ static void Library_End()
+ {
+ mysql_library_end();
+ }
};
#endif \ No newline at end of file