aboutsummaryrefslogtreecommitdiff
path: root/src/querymanager.hh
diff options
context:
space:
mode:
authorfusion32 <marcopuzziello@gmail.com>2025-10-07 22:28:46 -0300
committerfusion32 <marcopuzziello@gmail.com>2025-10-07 23:37:24 -0300
commit708bd2e3cf0a7aa825e6da96caaec55bd271f896 (patch)
treeddf068e441e73d1a8da9f10a09064237b3da824a /src/querymanager.hh
parentaa31732158d3e457dfe630f3b2e56f53de89e2b1 (diff)
downloadquerymanager-708bd2e3cf0a7aa825e6da96caaec55bd271f896.tar.gz
querymanager-708bd2e3cf0a7aa825e6da96caaec55bd271f896.zip
worker initialization robustness + query processing
Diffstat (limited to 'src/querymanager.hh')
-rw-r--r--src/querymanager.hh63
1 files changed, 12 insertions, 51 deletions
diff --git a/src/querymanager.hh b/src/querymanager.hh
index 9cfcbce..43cd6bc 100644
--- a/src/querymanager.hh
+++ b/src/querymanager.hh
@@ -94,7 +94,9 @@ struct TConfig{
int UpdateRate;
int QueryManagerPort;
char QueryManagerPassword[30];
+ int QueryWorkerThreads;
int QueryBufferSize;
+ int QueryMaxAttempts;
int MaxConnections;
int MaxConnectionIdleTime;
};
@@ -860,8 +862,9 @@ bool CheckDatabaseSchema(void);
bool InitDatabase(void);
void ExitDatabase(void);
-TDatabase *OpenDatabase(void);
-void CloseDatabase(TDatabase *Database);
+TDatabase *DatabaseOpen(void);
+void DatabaseClose(TDatabase *Database);
+bool DatabaseCheckpoint(TDatabase *Database);
// query.cc
//==============================================================================
@@ -927,14 +930,6 @@ struct TQuery{
TWriteBuffer Response;
};
-TQuery *QueryNew(void);
-void QueryDone(TQuery *Query);
-int QueryRefCount(TQuery *Query);
-void QueryEnqueue(TQuery *Query);
-TQuery *QueryDequeue(AtomicInt *Running);
-bool InitQuery(void);
-void ExitQuery(void);
-
TWriteBuffer QueryBeginRequest(TQuery *Query, int QueryType);
bool QueryFinishRequest(TQuery *Query, TWriteBuffer WriteBuffer);
bool QueryInternalResolveWorld(TQuery *Query, const char *World);
@@ -945,47 +940,13 @@ void QueryOk(TQuery *Query);
void QueryError(TQuery *Query, int ErrorCode);
void QueryFailed(TQuery *Query);
-void ProcessInternalResolveWorld(TDatabase *Database, TQuery *Query);
-void ProcessCheckAccountPassword(TDatabase *Database, TQuery *Query);
-void ProcessLoginAccount(TDatabase *Database, TQuery *Query);
-void ProcessLoginAdmin(TDatabase *Database, TQuery *Query);
-void ProcessLoginGame(TDatabase *Database, TQuery *Query);
-void ProcessLogoutGame(TDatabase *Database, TQuery *Query);
-void ProcessSetNamelock(TDatabase *Database, TQuery *Query);
-void ProcessBanishAccount(TDatabase *Database, TQuery *Query);
-void ProcessSetNotation(TDatabase *Database, TQuery *Query);
-void ProcessReportStatement(TDatabase *Database, TQuery *Query);
-void ProcessBanishIpAddress(TDatabase *Database, TQuery *Query);
-void ProcessLogCharacterDeath(TDatabase *Database, TQuery *Query);
-void ProcessAddBuddy(TDatabase *Database, TQuery *Query);
-void ProcessRemoveBuddy(TDatabase *Database, TQuery *Query);
-void ProcessDecrementIsOnline(TDatabase *Database, TQuery *Query);
-void ProcessFinishAuctions(TDatabase *Database, TQuery *Query);
-void ProcessTransferHouses(TDatabase *Database, TQuery *Query);
-void ProcessEvictFreeAccounts(TDatabase *Database, TQuery *Query);
-void ProcessEvictDeletedCharacters(TDatabase *Database, TQuery *Query);
-void ProcessEvictExGuildleaders(TDatabase *Database, TQuery *Query);
-void ProcessInsertHouseOwner(TDatabase *Database, TQuery *Query);
-void ProcessUpdateHouseOwner(TDatabase *Database, TQuery *Query);
-void ProcessDeleteHouseOwner(TDatabase *Database, TQuery *Query);
-void ProcessGetHouseOwners(TDatabase *Database, TQuery *Query);
-void ProcessGetAuctions(TDatabase *Database, TQuery *Query);
-void ProcessStartAuction(TDatabase *Database, TQuery *Query);
-void ProcessInsertHouses(TDatabase *Database, TQuery *Query);
-void ProcessClearIsOnline(TDatabase *Database, TQuery *Query);
-void ProcessCreatePlayerlist(TDatabase *Database, TQuery *Query);
-void ProcessLogKilledCreatures(TDatabase *Database, TQuery *Query);
-void ProcessLoadPlayers(TDatabase *Database, TQuery *Query);
-void ProcessExcludeFromAuctions(TDatabase *Database, TQuery *Query);
-void ProcessCancelHouseTransfer(TDatabase *Database, TQuery *Query);
-void ProcessLoadWorldConfig(TDatabase *Database, TQuery *Query);
-void ProcessCreateAccount(TDatabase *Database, TQuery *Query);
-void ProcessCreateCharacter(TDatabase *Database, TQuery *Query);
-void ProcessGetAccountSummary(TDatabase *Database, TQuery *Query);
-void ProcessGetCharacterProfile(TDatabase *Database, TQuery *Query);
-void ProcessGetWorlds(TDatabase *Database, TQuery *Query);
-void ProcessGetOnlineCharacters(TDatabase *Database, TQuery *Query);
-void ProcessGetKillStatistics(TDatabase *Database, TQuery *Query);
+TQuery *QueryNew(void);
+void QueryDone(TQuery *Query);
+int QueryRefCount(TQuery *Query);
+void QueryEnqueue(TQuery *Query);
+TQuery *QueryDequeue(AtomicInt *Stop);
+bool InitQuery(void);
+void ExitQuery(void);
// connections.cc
//==============================================================================