[ 
https://issues.apache.org/jira/browse/AVRO-2101?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eddy ALBERT updated AVRO-2101:
------------------------------
    Description: 
Hi,

It seems there is a bug in the Avro library when generating the Avro source 
files from the Avro schema.
As you could see in appendice, my schema is based on a main record and several 
sub-records.  
I work with "unions" for the type definition to allow setting fields to null 
when the value is not present.

*The issue is the following*:
First of all, this behavior isn't deterministic!
When the library generates the source file, most of the sub-records are well 
generated (with null as the default value), but sometime, a single sub-record 
has its default value set to "null" (String).
If I change the default value of the issued sub-record to "foo" and I 
re-generate the source file, I can see "foo" as the default value. If I 
rollback that change (back the default value to null) and I re-generate, I 
finally get null as default value (but not everytime ...).

I think this issue is the source bug of the one I publish on Stackoverflow: 
[https://stackoverflow.com/questions/46775649/handle-nested-avro-record-when-the-one-is-null/46786313#46786313]

Any suggestions?

Best regards,
EddyA.

Ps: its is always the same sub-record that is issued (mobile_web_event).

  was:
Hi,

It seems there is a bug in the Avro library when generating the Avro source 
files from the Avro schema.
As you could see in appendice, my schema is based on a main record and several 
sub-records.  
I work with "unions" for the type definition to allow setting fields to null 
when the value is not present.

*The issue is the following*:
First of all, this behavior isn't deterministic!
When the library generates the source file, most of the sub-records are well 
generated (with null as the default value), but sometime, a single sub-record 
has its default value set to "null" (String).
If I change the default value of the issued sub-record to "foo" and I 
re-generate the source file, I can see "foo" as the default value. If I 
rollback that change (back the default value to null) and I re-generate, I 
finally get null as default value (but not everytime ...).

I think this issue is the source bug of the one I publish on Stackoverflow: 
https://stackoverflow.com/questions/46775649/handle-nested-avro-record-when-the-one-is-null/46786313#46786313

Any suggestions?

Best regards,
EddyA.

Ps: its is always the same sub-record that is issued:

        {
            "name": "mobile_web_event",
            "type": {
                "type": "record",
                "name": "MobtabAvroMobileWebEvent",
                "fields": [
                    {
                        "name": "url",
                        "type": ["null", "string"],
                        "default": null
                    },
                    {
                        "name": "user_agent",
                        "type": ["null", "string"],
                        "default": null
                    }
                ]
            }
        },


> Issue with null default value
> -----------------------------
>
>                 Key: AVRO-2101
>                 URL: https://issues.apache.org/jira/browse/AVRO-2101
>             Project: Avro
>          Issue Type: Bug
>          Components: java
>    Affects Versions: 1.8.2
>         Environment: Java/IntelliJ/Maven
>            Reporter: Eddy ALBERT
>            Priority: Blocker
>
> Hi,
> It seems there is a bug in the Avro library when generating the Avro source 
> files from the Avro schema.
> As you could see in appendice, my schema is based on a main record and 
> several sub-records.  
> I work with "unions" for the type definition to allow setting fields to null 
> when the value is not present.
> *The issue is the following*:
> First of all, this behavior isn't deterministic!
> When the library generates the source file, most of the sub-records are well 
> generated (with null as the default value), but sometime, a single sub-record 
> has its default value set to "null" (String).
> If I change the default value of the issued sub-record to "foo" and I 
> re-generate the source file, I can see "foo" as the default value. If I 
> rollback that change (back the default value to null) and I re-generate, I 
> finally get null as default value (but not everytime ...).
> I think this issue is the source bug of the one I publish on Stackoverflow: 
> [https://stackoverflow.com/questions/46775649/handle-nested-avro-record-when-the-one-is-null/46786313#46786313]
> Any suggestions?
> Best regards,
> EddyA.
> Ps: its is always the same sub-record that is issued (mobile_web_event).



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to