From 11b8d0f05895a8b8abc82fa16c3246a71999186c Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Thu, 31 Mar 2022 18:10:21 +0200 Subject: [PATCH] IDO MySQL: reason latin1 charset for actually UTF-8 bytes --- lib/db_ido_mysql/idomysqlconnection.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/db_ido_mysql/idomysqlconnection.cpp b/lib/db_ido_mysql/idomysqlconnection.cpp index 0fa424ebd..1d7cd86d0 100644 --- a/lib/db_ido_mysql/idomysqlconnection.cpp +++ b/lib/db_ido_mysql/idomysqlconnection.cpp @@ -262,6 +262,9 @@ void IdoMysqlConnection::Reconnect() BOOST_THROW_EXCEPTION(std::bad_alloc()); } + /* Read "latin1" (here, in the schema and in Icinga Web) as "bytes". + Icinga 2 and Icinga Web use byte-strings everywhere and every byte-string is a valid latin1 string. + This way the (actually mostly UTF-8) bytes are transferred end-to-end as-is. */ m_Mysql->options(&m_Connection, MYSQL_SET_CHARSET_NAME, "latin1"); if (enableSsl)