Getting schema deserialisation error : Invalid default for field

Getting schema deserialisation error : Invalid default for field

当 运行 kafka 消费者时,我收到以下错误:

Caused by: org.apache.kafka.common.errors.SerializationException: Error deserializing Avro message for id 13
Caused by: org.apache.avro.AvroTypeException: Invalid default for field key_id: "null" not a ["null",{"type":"string","avro.java.string":"String"}]
    at org.apache.avro.Schema.validateDefault(Schema.java:1512)
    at org.apache.avro.Schema.access0(Schema.java:86)
    at org.apache.avro.Schema$Field.<init>(Schema.java:493

我的 avro 架构是这样的:

{ "name": "key_id", "type": [ "null", "string" ], "default": "null"},

我已经尝试了多种方案来解决这个问题,但它仍然存在。

您需要设置 "default": null,而不是 "default":"null"

{ "name": "key_id", "type": [ "null", "string" ], "default": null},