Uploaded image for project: 'Apache Avro'
  1. Apache Avro
  2. AVRO-1803

nullable fields and it's default value

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Not A Problem
    • 1.7.7, 1.8.0
    • None
    • build
    • None

    Description

      as described in
      https://avro.apache.org/docs/current/spec.html

      Unions

      Unions, as mentioned above, are represented using JSON arrays. For example, ["null", "string"] declares a schema which may be either a null or string.

      (Note that when a default value is specified for a record field whose type is a union, the type of the default value must match the first element of the union. Thus, for unions containing "null", the "null" is usually listed first, since the default value of such unions is typically null.)

      and the given example for Handshake with

      {"name": "clientProtocol", "type": ["null", "string"]},
      

      or even the "tweet.hashtags" example from http://stackoverflow.com/questions/31864450

      as seen in http://stackoverflow.com/questions/9417732 you have to explicit define the "default": null for the "nullable union field", else you get

      Field clientProtocol type:UNION pos:0 not set and has no default value

      so either there is a bug in the documentation or in the code ,)

      If its "just" a documentation error, please decrease this bug to a wish: add some compiler warnings when using union without default value

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              childnode Marcel "childNo͡.de" Trautwein
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: