1#ifndef ENGINE_SERVER_DATABASES_CONNECTION_POOL_H
2#define ENGINE_SERVER_DATABASES_CONNECTION_POOL_H
26 ISqlData(std::shared_ptr<ISqlResult> pResult) :
87 std::unique_ptr<const ISqlData> pSqlRequestData,
93 std::unique_ptr<const ISqlData> pSqlRequestData,
Mode
Definition connection_pool.h:73
@ NUM_MODES
Definition connection_pool.h:77
@ READ
Definition connection_pool.h:74
@ WRITE_BACKUP
Definition connection_pool.h:76
@ WRITE
Definition connection_pool.h:75
CDbConnectionPool & operator=(const CDbConnectionPool &)=delete
int m_InsertIdx
Definition connection_pool.h:106
friend class CWorker
Definition connection_pool.h:98
void * m_pBackupThread
Definition connection_pool.h:131
void * m_pWorkerThread
Definition connection_pool.h:130
std::shared_ptr< CSharedData > m_pShared
Definition connection_pool.h:129
friend class CBackup
Definition connection_pool.h:99
~CDbConnectionPool()
Definition connection_pool.cpp:485
bool m_Shutdown
Definition connection_pool.h:108
void Execute(FRead pFunc, std::unique_ptr< const ISqlData > pSqlRequestData, const char *pName)
Definition connection_pool.cpp:144
CDbConnectionPool()
Definition connection_pool.cpp:478
void ExecuteWrite(FWrite pFunc, std::unique_ptr< const ISqlData > pSqlRequestData, const char *pName)
Definition connection_pool.cpp:154
static bool ExecSqlFunc(IDbConnection *pConnection, struct CSqlExecData *pData, Write w)
Definition connection_pool.cpp:445
void Print(IConsole *pConsole, Mode DatabaseMode)
Definition connection_pool.cpp:123
bool(* FWrite)(IDbConnection *, const ISqlData *, Write, char *pError, int ErrorSize)
Definition connection_pool.h:70
bool(* FRead)(IDbConnection *, const ISqlData *, char *pError, int ErrorSize)
Definition connection_pool.h:69
void RegisterSqliteDatabase(Mode DatabaseMode, const char aFilename[64])
Definition connection_pool.cpp:130
void RegisterMysqlDatabase(Mode DatabaseMode, const CMysqlConfig *pMysqlConfig)
Definition connection_pool.cpp:137
void OnShutdown()
Definition connection_pool.cpp:164
Definition connection.h:20
Write
Definition connection_pool.h:36
@ NORMAL_FAILED
Definition connection_pool.h:44
@ NORMAL
Definition connection_pool.h:40
@ BACKUP_FIRST
Definition connection_pool.h:38
@ NORMAL_SUCCEEDED
Definition connection_pool.h:42
Definition connection_pool.h:111
std::unique_ptr< struct CSqlExecData > m_aQueries[512]
Definition connection_pool.h:126
std::atomic_bool m_Shutdown
Definition connection_pool.h:117
CSemaphore m_NumBackup
Definition connection_pool.h:120
CSemaphore m_NumWorker
Definition connection_pool.h:123
Definition connection_pool.h:50
char m_aPass[64]
Definition connection_pool.h:54
bool m_Setup
Definition connection_pool.h:58
char m_aDatabase[64]
Definition connection_pool.h:51
char m_aPrefix[64]
Definition connection_pool.h:52
char m_aIp[64]
Definition connection_pool.h:55
char m_aBindaddr[128]
Definition connection_pool.h:56
char m_aUser[64]
Definition connection_pool.h:53
int m_Port
Definition connection_pool.h:57
Definition connection_pool.cpp:21
Definition connection_pool.h:25
virtual ~ISqlData()=default
std::shared_ptr< ISqlResult > m_pResult
Definition connection_pool.h:32
ISqlData(std::shared_ptr< ISqlResult > pResult)
Definition connection_pool.h:26
Definition connection_pool.h:13
std::atomic_bool m_Completed
Definition connection_pool.h:17
virtual ~ISqlResult()=default
bool m_Success
Definition connection_pool.h:19