我正在尝试进行非常基本的json-schema演变: 从这个:
{
"$id": "http://example.com/myURI.schema.json",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"myField1": {
"type": "integer"
}
},
"required": ["myField1"],
"type": "object"
}
在此新版本中,添加了另一个字段“ myField2”,但这不是必需的。
"$id": "http://example.com/myURI.schema.json",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"myField1": {
"type": "integer"
},
"myField2": {
"type": "integer"
}
},
"required": [
"myField1"
],
"type": "object"
}
但是我一直在模式注册表UI中:
正在注册的架构与早期的架构不兼容
我想念什么吗?
答案 0 :(得分:0)
您需要为新字段定义默认值。请参阅融合的文档https://docs.confluent.io/current/schema-registry/avro.html。这样可以保持向后兼容性。