From 98457f746b8194269228282b879c4518efed4dab Mon Sep 17 00:00:00 2001 From: Noah Hilverling Date: Wed, 10 Mar 2021 09:29:08 +0100 Subject: [PATCH] IDO-MySQL: Make sure InternalNewTransaction() and FinishAsyncQueries() get executed during high load --- lib/db_ido_mysql/idomysqlconnection.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/db_ido_mysql/idomysqlconnection.cpp b/lib/db_ido_mysql/idomysqlconnection.cpp index 83919a330..55074a1d8 100644 --- a/lib/db_ido_mysql/idomysqlconnection.cpp +++ b/lib/db_ido_mysql/idomysqlconnection.cpp @@ -165,8 +165,7 @@ void IdoMysqlConnection::NewTransaction() << "Scheduling new transaction and finishing async queries."; #endif /* I2_DEBUG */ - m_QueryQueue.Enqueue(std::bind(&IdoMysqlConnection::InternalNewTransaction, this), PriorityNormal); - m_QueryQueue.Enqueue(std::bind(&IdoMysqlConnection::FinishAsyncQueries, this), PriorityNormal); + m_QueryQueue.Enqueue(std::bind(&IdoMysqlConnection::InternalNewTransaction, this), PriorityHigh); } void IdoMysqlConnection::InternalNewTransaction() @@ -180,6 +179,8 @@ void IdoMysqlConnection::InternalNewTransaction() AsyncQuery("COMMIT"); AsyncQuery("BEGIN"); + + FinishAsyncQueries(); } void IdoMysqlConnection::ReconnectTimerHandler()