SB-MaterialAdmin / NewServer

New server side for SourceBans Material Admin
GNU General Public License v3.0
42 stars 26 forks source link

Опять микрофризы из-за кодировки #89

Closed kleuser75 closed 4 years ago

kleuser75 commented 4 years ago

Опять были замечены микрофризы когда кто-то подключается к серверу. Что опять не так? SM 1.10 же уже умеет работать с кодировкой utf8mb4. Версия плагина 0.7.9 (перекомпелил даже на всякий случай сегодня на последнем билде 6460)

CrazyHackGUT commented 4 years ago

Сервер теряет соединение с БД, в следствии плагин переустанавливает принудительно кодировку. В конфиге параметр есть, выключающий это поведение. Но возможны проблемы с кириллицей, если коннект действительно рвётся.

kleuser75 commented 4 years ago

Коннект не теряется, всё работает нормально же. Где этот параметр в конфиге, не по глазам что-то.

CrazyHackGUT commented 4 years ago

На самом деле, теряется. И все фризы, вызванные плагином, связаны со сменой кодировки после потери соединения. https://github.com/SB-MaterialAdmin/NewServer/blob/1b7f0aa34df7a87bd976543d9abaa39279eadbe4/addons/sourcemod/configs/materialadmin/config.cfg#L284-L289

kleuser75 commented 4 years ago

Странно, как может терятся соединение если всё работает, баны вносятся, админы загружаются, я сам к базе подключаюсь без проблем... Можно ли как-то проверить, теряется соединение действительно или нет ?

CrazyHackGUT commented 4 years ago

К сожалению, никак. Особенность драйверов БД SM в том, что они постоянно держат соединение. У MySQL есть настройка, которая такие "соединения" может убивать по таймауту бездействия, к примеру.

kleuser75 commented 4 years ago

Ясно. Ну вообщем отключение UseDatabaseFix проблему вроде бы решило.