Ваш csv reader Служба контроллера сконфигурирована с полем
{"name": "Total_Experience", "type": "int"}
без значения по умолчанию и во входных данных вы не получаете это поле.
Таким образом, процессор жалуется Total_Experience
не может быть null
.
Чтобы устранить эту проблему, измените схему avro , чтобы включить null значение для Total_Experience поле.
Avro Схема:
{
"type": "record",
"name": "SQLSchema",
"fields" : [
{"name": "DeptId", "type": "int"},
{"name": "DepartmentName", "type": "string"},
{"name": "Address", "type": "string"},
{"name": "ExperienceNo", "type": "int"},
{"name": "Total_Experience", "type": ["null","int"]}
]
}
CsvReader Controller serviceКонфиги:
Выход:
DeptId,DepartmentName,Address,ExperienceNo,Total_Experience
1,DS,San Jose,4,-3
2,GT,San Fran,6,-4
3,At,Oakland,8,-5
4,BMS,detroit,3,1
5,RT,Haawai,9,-4
Правильный способ выполненияэто может быть:
Настройка CSV Reader без Total_Experience и включение Total_Experience в CsvSetWriter службы контроллеракогда вы создаете это поле using Query record
процессором.