Това се случва, защото information_schema.processlist
използва набор от символи UTF8mb3. (UTF е псевдоним на UTFmb3). Тази проста заявка илюстрира това:
mysql> select info, "🔥" from information_schema.processlist;
+------------------------------------------------------+------+
| info | ? |
+------------------------------------------------------+------+
| select info, "?" from information_schema.processlist | 🔥 |
+------------------------------------------------------+------+
1 row in set, 1 warning (0,00 sec)
Warning (Code 1366): Incorrect string value: '\xF0\x9F\x94\xA5" ...' for column 'INFO' at row 1
Горното предупреждение вероятно води до грешка, когато тригерът се опита да вмъкне съдържанието на info
колона в друга таблица.
Мисля, че проблемът е, че низът на заявката се съхранява както е в processlist
таблица, без да я конвертирате в очаквания набор от знаци. Подадох доклад за грешка
за това.