diff options
| author | Giacomo Pozzoni <giacomopoz@gmail.com> | 2021-07-24 14:50:30 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-07-24 14:50:30 +0200 |
| commit | 96dc110f4a353871ac74c82ff4b1bcc4c34156f3 (patch) | |
| tree | 076c45e0c291256a0d9e2ecbf7c8d989c5431470 /src/server/database | |
| parent | 48f63eda9029d4fe16b7a350059c8e26ba8484ce (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.cpp | 6 | ||||
| -rw-r--r-- | src/server/database/Database/DatabaseWorkerPool.h | 2 |
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); |
