[ 
https://issues.apache.org/jira/browse/NIFI-7925?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17218289#comment-17218289
 ] 

ASF subversion and git services commented on NIFI-7925:
-------------------------------------------------------

Commit d05d0c6240217da9cc72c07110ed273f37b0fa21 in nifi's branch 
refs/heads/main from Denes Arvay
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=d05d0c6 ]

NIFI-7925: ValidateRecord reports false positive for avro arrays with null 
elements


> ValidateRecord reports false positive for avro arrays with null elements
> ------------------------------------------------------------------------
>
>                 Key: NIFI-7925
>                 URL: https://issues.apache.org/jira/browse/NIFI-7925
>             Project: Apache NiFi
>          Issue Type: Bug
>    Affects Versions: 1.12.1
>            Reporter: Christophe Monnet
>            Assignee: Denes Arvay
>            Priority: Major
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> with this avro schema:
> {code:json}
> {
>     "type": "record",
>     "name": "simple",
>     "fields": [{
>         "name": "stuff",
>         "type": {
>             "type": "record",
>             "name": "stuff",
>             "namespace": "simple",
>             "fields": [{
>                     "name": "languages",
>                     "type": {
>                         "type": "array",
>                         "items": ["null", "string"]
>                     },
>                     "doc": ""
>                 }
>             ]
>         },
>         "doc": ""
>     }
>     ]
> }
> {code}
> and this payload:
> {code:json}
> {"stuff":{"languages":[null]}}
> {code}
> ValidateRecord fails with 
> Records in this FlowFile were invalid for the following reasons: ; The 
> following 1 fields had values whose type did not match the schema: 
> [/stuff/languages]
> But when using avrotool I can convert the payload:
> {code:bash}
> $ avrotool fromjson --schema-file schema.json payload.json > payload.avro
> $ avrotool tojson payload.avro
> {"stuff":{"languages":[null]}}
> {code}
> Moreover with this payload
> {code:json}
> {"stuff":{"languages":[]}}
> {code}
> ValidateRecord routes to the valid queue.
> Therefore I suspect that ValidateRecord has a bug when it comes to arrays 
> with nullable items.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to