diff options
| author | Shauren <shauren.trinity@gmail.com> | 2023-12-14 17:00:58 +0100 |
|---|---|---|
| committer | funjoker <funjoker109@gmail.com> | 2023-12-19 14:09:02 +0100 |
| commit | 31d79bae9c6dc80818c69505999484b310fe82c3 (patch) | |
| tree | 7ffee1fb39188f6242e96961fa5990d7935f44da /src/server/database/Database/Implementation | |
| parent | 1d7d2e99f12de089e82b4eed3c4ae4ed25229dd4 (diff) | |
Core/Database: Refactor MySQLConnection constructors and async thread creation
(cherry picked from commit 5c59e2a248c9b2132f4e863de56c981cfa83ec0b)
Diffstat (limited to 'src/server/database/Database/Implementation')
8 files changed, 8 insertions, 32 deletions
diff --git a/src/server/database/Database/Implementation/CharacterDatabase.cpp b/src/server/database/Database/Implementation/CharacterDatabase.cpp index 5f6d1fab36a..1f69d93273e 100644 --- a/src/server/database/Database/Implementation/CharacterDatabase.cpp +++ b/src/server/database/Database/Implementation/CharacterDatabase.cpp @@ -723,11 +723,7 @@ void CharacterDatabaseConnection::DoPrepareStatements() PrepareStatement(CHAR_INS_INSTANCE, "INSERT INTO instance (instanceId, data, completedEncountersMask, entranceWorldSafeLocId) VALUES (?, ?, ?, ?)", CONNECTION_ASYNC); } -CharacterDatabaseConnection::CharacterDatabaseConnection(MySQLConnectionInfo& connInfo) : MySQLConnection(connInfo) -{ -} - -CharacterDatabaseConnection::CharacterDatabaseConnection(ProducerConsumerQueue<SQLOperation*>* q, MySQLConnectionInfo& connInfo) : MySQLConnection(q, connInfo) +CharacterDatabaseConnection::CharacterDatabaseConnection(MySQLConnectionInfo& connInfo, ConnectionFlags connectionFlags) : MySQLConnection(connInfo, connectionFlags) { } diff --git a/src/server/database/Database/Implementation/CharacterDatabase.h b/src/server/database/Database/Implementation/CharacterDatabase.h index 2480eb8570d..88862a7184d 100644 --- a/src/server/database/Database/Implementation/CharacterDatabase.h +++ b/src/server/database/Database/Implementation/CharacterDatabase.h @@ -601,9 +601,7 @@ class TC_DATABASE_API CharacterDatabaseConnection : public MySQLConnection public: typedef CharacterDatabaseStatements Statements; - //- Constructors for sync and async connections - CharacterDatabaseConnection(MySQLConnectionInfo& connInfo); - CharacterDatabaseConnection(ProducerConsumerQueue<SQLOperation*>* q, MySQLConnectionInfo& connInfo); + CharacterDatabaseConnection(MySQLConnectionInfo& connInfo, ConnectionFlags connectionFlags); ~CharacterDatabaseConnection(); //- Loads database type specific prepared statements diff --git a/src/server/database/Database/Implementation/HotfixDatabase.cpp b/src/server/database/Database/Implementation/HotfixDatabase.cpp index 5f12c0eb458..19745c29b2a 100644 --- a/src/server/database/Database/Implementation/HotfixDatabase.cpp +++ b/src/server/database/Database/Implementation/HotfixDatabase.cpp @@ -1907,11 +1907,7 @@ void HotfixDatabaseConnection::DoPrepareStatements() PREPARE_MAX_ID_STMT(HOTFIX_SEL_WORLD_STATE_EXPRESSION, "SELECT MAX(ID) + 1 FROM world_state_expression", CONNECTION_SYNCH); } -HotfixDatabaseConnection::HotfixDatabaseConnection(MySQLConnectionInfo& connInfo) : MySQLConnection(connInfo) -{ -} - -HotfixDatabaseConnection::HotfixDatabaseConnection(ProducerConsumerQueue<SQLOperation*>* q, MySQLConnectionInfo& connInfo) : MySQLConnection(q, connInfo) +HotfixDatabaseConnection::HotfixDatabaseConnection(MySQLConnectionInfo& connInfo, ConnectionFlags connectionFlags) : MySQLConnection(connInfo, connectionFlags) { } diff --git a/src/server/database/Database/Implementation/HotfixDatabase.h b/src/server/database/Database/Implementation/HotfixDatabase.h index cc56229d867..67130a08431 100644 --- a/src/server/database/Database/Implementation/HotfixDatabase.h +++ b/src/server/database/Database/Implementation/HotfixDatabase.h @@ -1112,9 +1112,7 @@ class TC_DATABASE_API HotfixDatabaseConnection : public MySQLConnection public: typedef HotfixDatabaseStatements Statements; - //- Constructors for sync and async connections - HotfixDatabaseConnection(MySQLConnectionInfo& connInfo); - HotfixDatabaseConnection(ProducerConsumerQueue<SQLOperation*>* q, MySQLConnectionInfo& connInfo); + HotfixDatabaseConnection(MySQLConnectionInfo& connInfo, ConnectionFlags connectionFlags); ~HotfixDatabaseConnection(); //- Loads database type specific prepared statements diff --git a/src/server/database/Database/Implementation/LoginDatabase.cpp b/src/server/database/Database/Implementation/LoginDatabase.cpp index 5745a063e53..d646194ae8c 100644 --- a/src/server/database/Database/Implementation/LoginDatabase.cpp +++ b/src/server/database/Database/Implementation/LoginDatabase.cpp @@ -192,11 +192,7 @@ void LoginDatabaseConnection::DoPrepareStatements() "ON DUPLICATE KEY UPDATE illusionMask = illusionMask | VALUES(illusionMask)", CONNECTION_ASYNC); } -LoginDatabaseConnection::LoginDatabaseConnection(MySQLConnectionInfo& connInfo) : MySQLConnection(connInfo) -{ -} - -LoginDatabaseConnection::LoginDatabaseConnection(ProducerConsumerQueue<SQLOperation*>* q, MySQLConnectionInfo& connInfo) : MySQLConnection(q, connInfo) +LoginDatabaseConnection::LoginDatabaseConnection(MySQLConnectionInfo& connInfo, ConnectionFlags connectionFlags) : MySQLConnection(connInfo, connectionFlags) { } diff --git a/src/server/database/Database/Implementation/LoginDatabase.h b/src/server/database/Database/Implementation/LoginDatabase.h index 7f46b9e8e3a..d70241e2dca 100644 --- a/src/server/database/Database/Implementation/LoginDatabase.h +++ b/src/server/database/Database/Implementation/LoginDatabase.h @@ -184,9 +184,7 @@ class TC_DATABASE_API LoginDatabaseConnection : public MySQLConnection public: typedef LoginDatabaseStatements Statements; - //- Constructors for sync and async connections - LoginDatabaseConnection(MySQLConnectionInfo& connInfo); - LoginDatabaseConnection(ProducerConsumerQueue<SQLOperation*>* q, MySQLConnectionInfo& connInfo); + LoginDatabaseConnection(MySQLConnectionInfo& connInfo, ConnectionFlags connectionFlags); ~LoginDatabaseConnection(); //- Loads database type specific prepared statements diff --git a/src/server/database/Database/Implementation/WorldDatabase.cpp b/src/server/database/Database/Implementation/WorldDatabase.cpp index 2e9c4500fb1..1128b1e5d5c 100644 --- a/src/server/database/Database/Implementation/WorldDatabase.cpp +++ b/src/server/database/Database/Implementation/WorldDatabase.cpp @@ -80,11 +80,7 @@ void WorldDatabaseConnection::DoPrepareStatements() PrepareStatement(WORLD_INS_CONDITION, "INSERT INTO conditions (SourceTypeOrReferenceId, SourceGroup, SourceEntry, SourceId, ElseGroup, ConditionTypeOrReference, ConditionTarget, ConditionValue1, ConditionValue2, ConditionValue3, NegativeCondition, ErrorType, ErrorTextId, ScriptName, Comment) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", CONNECTION_ASYNC); } -WorldDatabaseConnection::WorldDatabaseConnection(MySQLConnectionInfo& connInfo) : MySQLConnection(connInfo) -{ -} - -WorldDatabaseConnection::WorldDatabaseConnection(ProducerConsumerQueue<SQLOperation*>* q, MySQLConnectionInfo& connInfo) : MySQLConnection(q, connInfo) +WorldDatabaseConnection::WorldDatabaseConnection(MySQLConnectionInfo& connInfo, ConnectionFlags connectionFlags) : MySQLConnection(connInfo, connectionFlags) { } diff --git a/src/server/database/Database/Implementation/WorldDatabase.h b/src/server/database/Database/Implementation/WorldDatabase.h index 32417efe722..ea6475786d9 100644 --- a/src/server/database/Database/Implementation/WorldDatabase.h +++ b/src/server/database/Database/Implementation/WorldDatabase.h @@ -98,9 +98,7 @@ class TC_DATABASE_API WorldDatabaseConnection : public MySQLConnection public: typedef WorldDatabaseStatements Statements; - //- Constructors for sync and async connections - WorldDatabaseConnection(MySQLConnectionInfo& connInfo); - WorldDatabaseConnection(ProducerConsumerQueue<SQLOperation*>* q, MySQLConnectionInfo& connInfo); + WorldDatabaseConnection(MySQLConnectionInfo& connInfo, ConnectionFlags connectionFlags); ~WorldDatabaseConnection(); //- Loads database type specific prepared statements |
