aboutsummaryrefslogtreecommitdiff
path: root/src/server/database/Database
diff options
context:
space:
mode:
authorGiacomo Pozzoni <giacomopoz@gmail.com>2021-07-24 14:50:30 +0200
committerShauren <shauren.trinity@gmail.com>2022-03-11 19:32:22 +0100
commit51f0294c18a32f5e299b17576e673d6c92bf0201 (patch)
tree97d892d94f2bb0426fab1ea6e65466bf54219b62 /src/server/database/Database
parent21177487ea9476cb4db3f498353c340181d87e14 (diff)
Core/DBLayer: Add QueueSize() method (#26733)
* Core/DBLayer: Add QueueSize() method Add QueueSize() method to database objects (Login, Character and World) that returns how many tasks are queued. Include the queue size of the 3 databases in ".server debug" command * Make the code less threadsafe * Send data to InfluxDB * Update grafana dashboard (cherry picked from commit 96dc110f4a353871ac74c82ff4b1bcc4c34156f3)
Diffstat (limited to 'src/server/database/Database')
-rw-r--r--src/server/database/Database/DatabaseWorkerPool.cpp6
-rw-r--r--src/server/database/Database/DatabaseWorkerPool.h2
2 files changed, 8 insertions, 0 deletions
diff --git a/src/server/database/Database/DatabaseWorkerPool.cpp b/src/server/database/Database/DatabaseWorkerPool.cpp
index 043db148a1e..7aa1a1e46d1 100644
--- a/src/server/database/Database/DatabaseWorkerPool.cpp
+++ b/src/server/database/Database/DatabaseWorkerPool.cpp
@@ -415,6 +415,12 @@ void DatabaseWorkerPool<T>::Enqueue(SQLOperation* op)
}
template <class T>
+size_t DatabaseWorkerPool<T>::QueueSize() const
+{
+ return _queue->Size();
+}
+
+template <class T>
T* DatabaseWorkerPool<T>::GetFreeConnection()
{
#ifdef TRINITY_DEBUG
diff --git a/src/server/database/Database/DatabaseWorkerPool.h b/src/server/database/Database/DatabaseWorkerPool.h
index 9852ded374e..66d5a55dffa 100644
--- a/src/server/database/Database/DatabaseWorkerPool.h
+++ b/src/server/database/Database/DatabaseWorkerPool.h
@@ -213,6 +213,8 @@ class DatabaseWorkerPool
#endif
}
+ size_t QueueSize() const;
+
private:
uint32 OpenConnections(InternalIndex type, uint8 numConnections);