【问题标题】:Could not make an Avro Schema object from date无法从日期创建 Avro Schema 对象
【发布时间】:2017-04-28 19:26:21
【问题描述】:

我有一个具有此属性的 Avro 架构:

{"name": "whenDate", "type": ["date", "null"]}

我正在使用 Python 客户端和生产者

confluent_kafka.avro.AvroProducer

当我使用上述属性加载 Avro 架构时, 我触发了这个错误:

not a valid Avro schema: Type property "[u'date', u'null']" not a valid 
Avro schema: Union item must be a valid Avro schema: Could not make an Avro Schema object from date.

我认为此错误与 Avro 架构的 Confluent 解析器中的限制有关。也就是说,date 是指定为 here 的逻辑类型,但 Confluent 解析器尚不支持它。

谁能确认?更一般地说,我应该假设 Confluent 解析器不处理 Avro 模式的逻辑类型吗?谢谢。

【问题讨论】:

    标签: apache-kafka avro kafka-python


    【解决方案1】:

    这是一个逻辑类型,我想你只需要将它声明为一个。

    {"name": "date", "type": "int", "logicalType": "date"}
    

    【讨论】:

    • 我会相信你的答案,但这并不完全正确,因为 Avro 规范将“日期”逻辑类型列为“int”类型的注释。您可以在回复中将“long”更改为“int”吗?谢谢。
    • @KodeCharlie 完成。
    猜你喜欢
    • 2019-12-21
    • 1970-01-01
    • 2014-11-11
    • 2014-05-22
    • 1970-01-01
    • 1970-01-01
    • 2013-05-06
    • 2019-02-09
    • 1970-01-01
    相关资源
    最近更新 更多