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

nullable fields and it's default value

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Not A Problem
    • Affects Version/s: 1.7.7, 1.8.0
    • Fix Version/s: None
    • Component/s: build
    • Labels:
      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

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

                Dates

                • Created:
                  Updated:
                  Resolved: