【问题标题】:Update avdl (avro schema) field from required to optional (NULL) value将 avdl (avro schema) 字段从必需更新为可选 (NULL) 值
【发布时间】:2019-06-07 02:40:11
【问题描述】:

我的avdl是这样定义的,

@namespace("my.event")
protocol Customer {

 record Address { 
  string street;
 }
}

但在事件发布并注册架构后,我想让street 类型也允许null 值。我希望更改向前/向后兼容。我怎样才能做到这一点? 在记录之前定义一个新的命名空间可以做到这一点吗? (https://github.com/ga4gh/ga4gh-schemas/issues/344#unionshttps://docs.oracle.com/database/nosql-12.2.4.4/GettingStartedGuide/schemaevolution.html) 怎么样,

union{null, string} street  = null;

【问题讨论】:

    标签: schema avro idl


    【解决方案1】:

    是的,如果你想让一个字段不再需要,你可以用它的现有类型将它包装在一个 null 中。我与经常看到这样做的人一起工作,并且针对这些主题将 Confluent Schema Registry 设置为 BACKWARDS 配置。

    注意:在发布事件之前,您可以(并且应该)始终 check the compatiblity 新架构

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-12-21
      • 1970-01-01
      • 2013-09-01
      • 2017-06-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-30
      相关资源
      最近更新 更多