use*_*610 3 serialization avro deserialization apache-kafka confluent-schema-registry
在运行 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.access$300(Schema.java:86)
at org.apache.avro.Schema$Field.<init>(Schema.java:493
Run Code Online (Sandbox Code Playgroud)
我的 avro 架构是这样的:
{ "name": "key_id", "type": [ "null", "string" ], "default": "null"},
Run Code Online (Sandbox Code Playgroud)
我尝试了多种选择来解决这个问题,但它仍然存在。
您需要设置"default": null,而不是"default":"null":
{ "name": "key_id", "type": [ "null", "string" ], "default": null},
Run Code Online (Sandbox Code Playgroud)