kafka: производитель и потребитель с другим файлом avro

Я обрабатываю 2 разных файла avro:

avroConsumer:

{"namespace": "autoGenerated.avro",
  "type": "record",
  "name": "UserConsumer",
  "fields": [
    {"name": "Name", "type": "string"},
    {"name": "Surname", "type":["null","string"],"default": null},
    {"name": "favorite_number",  "type": ["long", "null"]},
    {"name": "favorite_color", "type": ["string", "null"]}
  ]
}

авроПроизводитель:

{"namespace": "autoGenerated.avro",
  "type": "record",
  "name": "UserProducer",
  "fields": [
    {"name": "name", "type": "string"},
    {"name": "favorite_number",  "type": ["int", "null"]},
    {"name": "favorite_color", "type": ["string", "null"]}
  ]
}

При процедуре компиляции происходит ошибка десериализации, но я подумал, что определение атрибута "default" в приемнике должно заставить его работать правильно.
Ссылка: http://avro.apache.org/docs/current/spec.html

если схема записи считывателя имеет поле, содержащее значение по умолчанию, а схема писателя не имеет поля с тем же именем, тогда читатель должен использовать значение по умолчанию из своего поля.

есть предложения? Могу ли я определить другой потребительский avro-файл, а не avro-файл производителя?

0 ответов

Другие вопросы по тегам