Данные слишком длинные для столбца после того, как соединитель AWS MSK перемещает строку в другую схемуMySql

Форум по Mysql
Ответить
Anonymous
 Данные слишком длинные для столбца после того, как соединитель AWS MSK перемещает строку в другую схему

Сообщение Anonymous »

Описание проблемы
У меня есть две среды: непроизводственная и производственная.
Они запускают одно и то же приложение, одну и ту же кодовую базу, одну и ту же версию MySQL, один и тот же драйвер JDBC, одну и ту же схему, одни и те же службы, одну и ту же проверку API и одни и те же входные данные.
Однако только PROD выдает:
Данные слишком длинные для столбца «xxx»
в непроизводственном режиме прекрасно работает с теми же данными.
То, что я уже проверил (и они действительно совпадают):
Определения таблиц, кодировки столбцов и параметры сортировки
Кодировки базы данных
Формат строк (тот же)
OCTET_LENGTH и CHARACTER_LENGTH (одинаковые)
Режимы SQL (то же самое)
Версии MySQL (то же самое)
Код приложения, зависимости и драйвер JDBC (то же самое)
Конфигурация Spring Boot для UTF-8 (то же самое)
Проверка входных данных API (то же самое)
Схема Kafka/MSK (то же самое)
HTTP-вызовы и форматы полезной нагрузки (тот же)
Единственная подсказка, которую я нашел:
В журналах приложений один сервис работает с кодировкой по умолчанию UTF-8, но в PROD другой сервис показывает:
Кодировка JVM по умолчанию = ANSI_X3.4-1968
Непродуктивная кодировка этого не показывает — там все UTF-8.
Симптомы
Один и тот же запрос проходит проверку и нормально вставляется в непродуктивную среду.
В продуктивной версии MySQL выдает ошибку «Данные слишком длинные», хотя количество символов идентично.
Сравнение HEX показывает, что PROD хранит другую (большую) последовательность байтов, что указывает на двойное кодирование или неверную интерпретацию кодировки.
Все метаданные базы данных (кодировка столбца, параметры сортировки) одинаковы в разных средах.

Подробнее здесь: https://stackoverflow.com/questions/798 ... -other-sch
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «MySql»