在进行AVRO序列化时检测哪个字段为空值

问题描述

我有一个Avro方案,其中有100个字段,在这些字段中,一个字段的数组类型如下所示

{"name": "xyz","type": {
    "type": "array","items": {
      "name": "XYZ","type": "record","fields": [
       
        {"name": "x","type": ["null","string"],"doc": ""},{"name": "y","type": ["string"],{"name": "z","doc": ""} 
      ]
    }}}

此数组xyz不可为空,并且没有认值。从第三方系统接收数据时,有时此字段为空,并在根据avro模式序列化数据时给出

嵌套的例外是 org.apache.kafka.common.errors.SerializationException:错误 具有根本原因的序列化Avro消息]。 java.lang.NullPointerException:null

我们可以在代码中避免这些类型的异常吗?或者我们如何才能检测到哪个字段出错了?现在,这是一种普遍的错误。无法更改Avro模式。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)