Andreas Maier created AVRO-1927: ----------------------------------- Summary: If a default value is set, Avro allows null values in non-nullable fields. Key: AVRO-1927 URL: https://issues.apache.org/jira/browse/AVRO-1927 Project: Avro Issue Type: Bug Components: java Affects Versions: 1.8.1 Reporter: Andreas Maier
With an avro schema like {code} { "name": "myfield", "type": "string", "default": "" } {code} the following code should throw an exception {code} MyObject myObject = MyObject.newBuilder().setMyfield(null).build(); {code} But instead the value of myfield is set to null, which causes an exception later when serializing myObject, because null is not a valid value for myfield. I believe in this case setMyfield(null) should throw an exception, independent of the value of default. See also https://stackoverflow.com/questions/38509279/generated-avro-builder-set-null-doesnt-overwrite-with-default -- This message was sent by Atlassian JIRA (v6.3.4#6332)