From 68bb0f98a11e92f45cea47cc271df9ad8c76936e Mon Sep 17 00:00:00 2001 From: Rostislav Wolny Date: Wed, 31 Jul 2019 22:04:56 +0200 Subject: [PATCH] Fix setting wait_timeout for database [MAILPOET-2243] --- lib/Doctrine/ConnectionFactory.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/Doctrine/ConnectionFactory.php b/lib/Doctrine/ConnectionFactory.php index 7af24e2739..4584c3a8d1 100644 --- a/lib/Doctrine/ConnectionFactory.php +++ b/lib/Doctrine/ConnectionFactory.php @@ -43,7 +43,9 @@ class ConnectionFactory { $driver_options = [ "@@session.time_zone = '$timezone_offset'", '@@session.sql_mode = REPLACE(@@sql_mode, "ONLY_FULL_GROUP_BY", "")', - "@@session.wait_timeout = GREATEST(@@wait_timeout, $this->min_wait_timeout)", + // We need to use CONVERT for MySQL 8, Maria DB bug which triggers #1232 - Incorrect argument type to variable 'wait_timeout` + // https://stackoverflow.com/questions/35187378/mariadb-type-error-when-setting-session-variable + "@@session.wait_timeout = GREATEST(CONVERT(COALESCE(@@wait_timeout, 0), SIGNED), $this->min_wait_timeout)", ]; if (!empty(Env::$db_charset)) {