diff options
| author | Machiavelli <none@none> | 2010-09-03 10:52:32 +0200 |
|---|---|---|
| committer | Machiavelli <none@none> | 2010-09-03 10:52:32 +0200 |
| commit | 273679c5baba2c8f8978b1d5d0caadf1c933ebda (patch) | |
| tree | bff84137e930a2dec85216669505aa5370f669bd /src/server/game | |
| parent | 277f2674ac278e981bb483c13b34b0a2d2f28a2b (diff) | |
Core/DBLayer
- Store threadbundlemask internally per database pool and prevent direct access to config file post startup
- Fix threadbundlemask flag checking for ReactorRunnable, WorldRunnable
- Remove CLI threadbundlemask flag, CLI doesn´t need a seperate mysql connection nor thread
- Remove unused Character Database connection from WorldSocketMgr / ReactorRunnable
- Add proper LoginDatabase connection to RA Runnable (soon to be overhauled)
Note: still experimental and not tested for live use
--HG--
branch : trunk
Diffstat (limited to 'src/server/game')
| -rw-r--r-- | src/server/game/Server/WorldSocketMgr.cpp | 12 | ||||
| -rw-r--r-- | src/server/game/World/World.cpp | 5 | ||||
| -rw-r--r-- | src/server/game/World/World.h | 3 |
3 files changed, 2 insertions, 18 deletions
diff --git a/src/server/game/Server/WorldSocketMgr.cpp b/src/server/game/Server/WorldSocketMgr.cpp index 728c55b4e8f..7422170fa59 100644 --- a/src/server/game/Server/WorldSocketMgr.cpp +++ b/src/server/game/Server/WorldSocketMgr.cpp @@ -159,18 +159,12 @@ class ReactorRunnable : protected ACE_Task_Base sLog.outStaticDebug ("Network Thread Starting"); bool needInit = true; - if (!(sWorld.getIntConfig(CONFIG_MYSQL_BUNDLE_LOGINDB) & MYSQL_BUNDLE_RA)) + if (!(LoginDatabase.GetBundleMask() & MYSQL_BUNDLE_RAR)) { LoginDatabase.Init_MySQL_Connection(); needInit = false; } - if (!(sWorld.getIntConfig(CONFIG_MYSQL_BUNDLE_CHARDB) & MYSQL_BUNDLE_RA)) - { - CharacterDatabase.Init_MySQL_Connection(); - needInit = false; - } - if (needInit) MySQL::Thread_Init(); @@ -210,10 +204,8 @@ class ReactorRunnable : protected ACE_Task_Base } ///- Free MySQL thread resources and deallocate lingering connections - if (!(sWorld.getIntConfig(CONFIG_MYSQL_BUNDLE_LOGINDB) & MYSQL_BUNDLE_RA)) + if (!(LoginDatabase.GetBundleMask() & MYSQL_BUNDLE_RAR)) LoginDatabase.End_MySQL_Connection(); - if (!(sWorld.getIntConfig(CONFIG_MYSQL_BUNDLE_CHARDB) & MYSQL_BUNDLE_RA)) - CharacterDatabase.End_MySQL_Connection(); if (needInit) MySQL::Thread_End(); diff --git a/src/server/game/World/World.cpp b/src/server/game/World/World.cpp index 8306cd3403d..0185aabd792 100644 --- a/src/server/game/World/World.cpp +++ b/src/server/game/World/World.cpp @@ -1212,11 +1212,6 @@ void World::LoadConfigSettings(bool reload) // Dungeon finder m_bool_configs[CONFIG_DUNGEON_FINDER_ENABLE] = sConfig.GetBoolDefault("DungeonFinder.Enable", false); - // MySQL thread bundling config for other runnable tasks - m_int_configs[CONFIG_MYSQL_BUNDLE_LOGINDB] = sConfig.GetIntDefault("LoginDatabase.ThreadBundleMask", MYSQL_BUNDLE_ALL); - m_int_configs[CONFIG_MYSQL_BUNDLE_CHARDB] = sConfig.GetIntDefault("CharacterDatabase.ThreadBundleMask", MYSQL_BUNDLE_ALL); - m_int_configs[CONFIG_MYSQL_BUNDLE_WORLDDB] = sConfig.GetIntDefault("WorldDatabase.ThreadBundleMask", MYSQL_BUNDLE_ALL); - sScriptMgr.OnConfigLoad(reload); } diff --git a/src/server/game/World/World.h b/src/server/game/World/World.h index cb54ee406be..b7bb6affdd4 100644 --- a/src/server/game/World/World.h +++ b/src/server/game/World/World.h @@ -300,9 +300,6 @@ enum WorldIntConfigs CONFIG_CHARDELETE_KEEP_DAYS, CONFIG_CHARDELETE_METHOD, CONFIG_CHARDELETE_MIN_LEVEL, - CONFIG_MYSQL_BUNDLE_LOGINDB, - CONFIG_MYSQL_BUNDLE_CHARDB, - CONFIG_MYSQL_BUNDLE_WORLDDB, INT_CONFIG_VALUE_COUNT }; |
