diff options
| author | Machiavelli <machiavelli.trinity@gmail.com> | 2011-01-13 21:30:37 +0100 |
|---|---|---|
| committer | Machiavelli <machiavelli.trinity@gmail.com> | 2011-01-13 21:30:37 +0100 |
| commit | bd85914d92ccab255475dce9d4700abdc8428fb4 (patch) | |
| tree | 6d8a41fdd0678ab31977c583c4987c348f401dec /src/server/shared/Database | |
| parent | 4c15ebe09d51d22d98e314302652b66f345a56ff (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-x | src/server/shared/Database/DatabaseWorkerPool.h | 2 | ||||
| -rwxr-xr-x | src/server/shared/Database/MySQLThreading.h | 14 |
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 |
