From 92df2ce2ca8e62d70509eaa823be520994bf7592 Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Tue, 20 Apr 2021 18:42:37 +0200 Subject: [PATCH] Deduplicate DbConnection#Disconnect() in #Pause() refs #8727 --- lib/db_ido/dbconnection.cpp | 2 ++ lib/db_ido_mysql/idomysqlconnection.cpp | 2 -- lib/db_ido_pgsql/idopgsqlconnection.cpp | 2 -- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/lib/db_ido/dbconnection.cpp b/lib/db_ido/dbconnection.cpp index 552c3fed4..60aab5fde 100644 --- a/lib/db_ido/dbconnection.cpp +++ b/lib/db_ido/dbconnection.cpp @@ -112,6 +112,8 @@ void DbConnection::Pause() NewTransaction(); + m_QueryQueue.Enqueue([this]() { Disconnect(); }, PriorityLow); + /* Work on remaining tasks but never delete the threads, for HA resuming later. */ m_QueryQueue.Join(); diff --git a/lib/db_ido_mysql/idomysqlconnection.cpp b/lib/db_ido_mysql/idomysqlconnection.cpp index 5b0a39326..1f379489f 100644 --- a/lib/db_ido_mysql/idomysqlconnection.cpp +++ b/lib/db_ido_mysql/idomysqlconnection.cpp @@ -105,8 +105,6 @@ void IdoMysqlConnection::Pause() << "Rescheduling disconnect task."; #endif /* I2_DEBUG */ - m_QueryQueue.Enqueue([this]() { Disconnect(); }, PriorityLow); - Log(LogInformation, "IdoMysqlConnection") << "'" << GetName() << "' paused."; diff --git a/lib/db_ido_pgsql/idopgsqlconnection.cpp b/lib/db_ido_pgsql/idopgsqlconnection.cpp index eba81f64f..5bc323335 100644 --- a/lib/db_ido_pgsql/idopgsqlconnection.cpp +++ b/lib/db_ido_pgsql/idopgsqlconnection.cpp @@ -104,8 +104,6 @@ void IdoPgsqlConnection::Pause() m_ReconnectTimer.reset(); - m_QueryQueue.Enqueue([this]() { Disconnect(); }, PriorityLow); - Log(LogInformation, "IdoPgsqlConnection") << "'" << GetName() << "' paused."; }