aboutsummaryrefslogtreecommitdiff
path: root/src/server/database
diff options
context:
space:
mode:
authorGiacomo Pozzoni <giacomopoz@gmail.com>2021-07-24 14:50:30 +0200
committerGitHub <noreply@github.com>2021-07-24 14:50:30 +0200
commit96dc110f4a353871ac74c82ff4b1bcc4c34156f3 (patch)
tree076c45e0c291256a0d9e2ecbf7c8d989c5431470 /src/server/database
parent48f63eda9029d4fe16b7a350059c8e26ba8484ce (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
Diffstat (limited to 'src/server/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 c09f7c3e4b6..e5f70c5a0e0 100644
--- a/src/server/database/Database/DatabaseWorkerPool.cpp
+++ b/src/server/database/Database/DatabaseWorkerPool.cpp
@@ -414,6 +414,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);