aboutsummaryrefslogtreecommitdiff
path: root/src/shared/Database/DatabaseMysql.cpp
diff options
context:
space:
mode:
authormegamage <none@none>2009-05-13 18:22:21 -0500
committermegamage <none@none>2009-05-13 18:22:21 -0500
commit25e5c99dec793dfcc45a41873af1760392ee8844 (patch)
treef79107e9d93dc351f5b4f7b05924eed793f067d3 /src/shared/Database/DatabaseMysql.cpp
parent9dd5a1c6d7a6656b8ec71ff33659acd2294633ad (diff)
[7810] Moved ZThread related code on ACE framework. Author: Ambal
Remove ZThread source code from mangos. --HG-- branch : trunk
Diffstat (limited to 'src/shared/Database/DatabaseMysql.cpp')
-rw-r--r--src/shared/Database/DatabaseMysql.cpp29
1 files changed, 16 insertions, 13 deletions
diff --git a/src/shared/Database/DatabaseMysql.cpp b/src/shared/Database/DatabaseMysql.cpp
index 5dc02c0a738..92b303a167d 100644
--- a/src/shared/Database/DatabaseMysql.cpp
+++ b/src/shared/Database/DatabaseMysql.cpp
@@ -23,7 +23,7 @@
#include "Util.h"
#include "Policies/SingletonImp.h"
#include "Platform/Define.h"
-#include "../src/zthread/ThreadImpl.h"
+#include "Threading.h"
#include "DatabaseEnv.h"
#include "Database/MySQLDelayThread.h"
#include "Database/SqlOperations.h"
@@ -203,8 +203,8 @@ QueryResult* DatabaseMysql::Query(const char *sql)
{
// guarded block for thread-safe mySQL request
- ZThread::Guard<ZThread::FastMutex> query_connection_guard(mMutex);
- #ifdef TRINITY_DEBUG
+ ACE_Guard<ACE_Thread_Mutex> query_connection_guard(mMutex);
+ #ifdef MANGOS_DEBUG
uint32 _s = getMSTime();
#endif
if(mysql_query(mMysql, sql))
@@ -251,7 +251,7 @@ bool DatabaseMysql::Execute(const char *sql)
// don't use queued execution if it has not been initialized
if (!m_threadBody) return DirectExecute(sql);
- tranThread = ZThread::ThreadImpl::current(); // owner of this transaction
+ tranThread = ACE_Based::Thread::current(); // owner of this transaction
TransactionQueues::iterator i = m_tranQueues.find(tranThread);
if (i != m_tranQueues.end() && i->second != NULL)
{ // Statement for transaction
@@ -273,8 +273,9 @@ bool DatabaseMysql::DirectExecute(const char* sql)
{
// guarded block for thread-safe mySQL request
- ZThread::Guard<ZThread::FastMutex> query_connection_guard(mMutex);
- #ifdef TRINITY_DEBUG
+ ACE_Guard<ACE_Thread_Mutex> query_connection_guard(mMutex);
+
+ #ifdef MANGOS_DEBUG
uint32 _s = getMSTime();
#endif
if(mysql_query(mMysql, sql))
@@ -318,8 +319,9 @@ bool DatabaseMysql::BeginTransaction()
// don't use queued execution if it has not been initialized
if (!m_threadBody)
{
- if (tranThread==ZThread::ThreadImpl::current())
+ if (tranThread == ACE_Based::Thread::current())
return false; // huh? this thread already started transaction
+
mMutex.acquire();
if (!_TransactionCmd("START TRANSACTION"))
{
@@ -329,7 +331,7 @@ bool DatabaseMysql::BeginTransaction()
return true; // transaction started
}
- tranThread = ZThread::ThreadImpl::current(); // owner of this transaction
+ tranThread = ACE_Based::Thread::current(); // owner of this transaction
TransactionQueues::iterator i = m_tranQueues.find(tranThread);
if (i != m_tranQueues.end() && i->second != NULL)
// If for thread exists queue and also contains transaction
@@ -349,7 +351,7 @@ bool DatabaseMysql::CommitTransaction()
// don't use queued execution if it has not been initialized
if (!m_threadBody)
{
- if (tranThread!=ZThread::ThreadImpl::current())
+ if (tranThread != ACE_Based::Thread::current())
return false;
bool _res = _TransactionCmd("COMMIT");
tranThread = NULL;
@@ -357,7 +359,7 @@ bool DatabaseMysql::CommitTransaction()
return _res;
}
- tranThread = ZThread::ThreadImpl::current();
+ tranThread = ACE_Based::Thread::current();
TransactionQueues::iterator i = m_tranQueues.find(tranThread);
if (i != m_tranQueues.end() && i->second != NULL)
{
@@ -377,7 +379,7 @@ bool DatabaseMysql::RollbackTransaction()
// don't use queued execution if it has not been initialized
if (!m_threadBody)
{
- if (tranThread!=ZThread::ThreadImpl::current())
+ if (tranThread != ACE_Based::Thread::current())
return false;
bool _res = _TransactionCmd("ROLLBACK");
tranThread = NULL;
@@ -385,7 +387,7 @@ bool DatabaseMysql::RollbackTransaction()
return _res;
}
- tranThread = ZThread::ThreadImpl::current();
+ tranThread = ACE_Based::Thread::current();
TransactionQueues::iterator i = m_tranQueues.find(tranThread);
if (i != m_tranQueues.end() && i->second != NULL)
{
@@ -408,7 +410,8 @@ void DatabaseMysql::InitDelayThread()
assert(!m_delayThread);
//New delay thread for delay execute
- m_delayThread = new ZThread::Thread(m_threadBody = new MySQLDelayThread(this));
+ m_threadBody = new MySQLDelayThread(this);
+ m_delayThread = new ACE_Based::Thread(*m_threadBody);
}
void DatabaseMysql::HaltDelayThread()