Какой полный запрос вы выполняете?Когда вы используете функцию в качестве поля для выбора, возвращаемое имя обычно является чем-то напуганным, и из-за строгих правил именования полей в Avro (в который ExecuteSQL преобразует данные) часто жалуется, поэтому вы должны использовать псевдонимчто-то вроде select convert(field using utf8) as field from myTable
.
Но если вы не получаете сообщение об ошибке, я подозреваю, что, возможно, есть некоторая переменная сеанса, которая устанавливается в вашем внешнем инструменте MySQL и не устанавливается для сеанса NiFi.В предстоящем выпуске NiFi 1.9.0 (через NIFI-5780 ) вы сможете выполнять инструкции SET и тому подобное для сеанса до выполнения основного запроса.
В противном случае этоВозможно, что драйвер JDBC возвращает тип к NiFi, который он обрабатывает неправильно (хотя для UTF8 я ожидал, что он сообщит String).Я пробовал это с полем BINARY(10)
, и оно работает для меня (используя последний мастер, а не выпущенную версию), поэтому я не уверен, что там происходит.