![](/img/trans.png)
[英]org.apache.avro.UnresolvedUnionException: Not in union [{“type”:“bytes”,“logicalType”:“decimal”,“precision”:18,“scale”:4},“null”]: 0.0000
[英]Not in union [“null”,“int”] Avro Format org.apache.avro.UnresolvedUnionException
我有一個 java 程序,它以 avro 格式從 Oracle db 寫入數據。 我在寫作時在日期列上遇到了這個異常
org.apache.avro.file.DataFileWriter$AppendWriteException: org.apache.avro.UnresolvedUnionException: Not in union ["null","int"]: 2020-04-01
我正在使用 avro 1.9.2 版本。 下面是架構:
{
"type": "record",
"name": "some",
"doc": "SOME",
"namespace": "some.avro",
"fields": [
{
"name": "SOME_DATE",
"type": [
"null",
"int"
],
"logicalType": "date",
"default": null
}
..
]
}
當我將以下模式與字符串一起使用時,它工作正常。
{"name":"SOME_DATE","type": ["null","string"]}
您的架構應如下所示:
{
"type": "record",
"name": "some",
"doc": "SOME",
"namespace": "some.avro",
"fields": [
{
"name": "SOME_DATE",
"type": [
"null",
{ "type": "int", "logicalType": "date" }
],
"default": null
}
..
]
}
但是,您可能會在轉換具有默認值的聯合類型和該聯合內的邏輯類型時遇到一個令人討厭的問題。 ))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.