You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by ma...@apache.org on 2017/05/12 18:59:22 UTC
nifi git commit: NIFI-3879: Allow null Avro default values
Repository: nifi
Updated Branches:
refs/heads/master e9848f427 -> 382eef218
NIFI-3879: Allow null Avro default values
- Avro uses their own class for null values, so a standard check against
null isn't picking them up.
This closes #1792.
Project: http://git-wip-us.apache.org/repos/asf/nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/382eef21
Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/382eef21
Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/382eef21
Branch: refs/heads/master
Commit: 382eef2183192357c3823c207f1835711f57688c
Parents: e9848f4
Author: Steve Champagne <ch...@gmail.com>
Authored: Fri May 12 17:32:14 2017 +0000
Committer: Mark Payne <ma...@hotmail.com>
Committed: Fri May 12 14:58:43 2017 -0400
----------------------------------------------------------------------
.../src/main/java/org/apache/nifi/avro/AvroTypeUtil.java | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/nifi/blob/382eef21/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/main/java/org/apache/nifi/avro/AvroTypeUtil.java
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/main/java/org/apache/nifi/avro/AvroTypeUtil.java b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/main/java/org/apache/nifi/avro/AvroTypeUtil.java
index bd5e8e4..8ded9bc 100644
--- a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/main/java/org/apache/nifi/avro/AvroTypeUtil.java
+++ b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/main/java/org/apache/nifi/avro/AvroTypeUtil.java
@@ -25,6 +25,7 @@ import org.apache.avro.generic.GenericData;
import org.apache.avro.generic.GenericFixed;
import org.apache.avro.generic.GenericRecord;
import org.apache.avro.util.Utf8;
+import org.apache.avro.JsonProperties;
import org.apache.nifi.schema.access.SchemaNotFoundException;
import org.apache.nifi.serialization.SimpleRecordSchema;
import org.apache.nifi.serialization.record.DataType;
@@ -205,7 +206,11 @@ public class AvroTypeUtil {
final String fieldName = field.name();
final DataType dataType = AvroTypeUtil.determineDataType(field.schema());
- recordFields.add(new RecordField(fieldName, dataType, field.defaultVal(), field.aliases()));
+ if (field.defaultVal() == JsonProperties.NULL_VALUE) {
+ recordFields.add(new RecordField(fieldName, dataType, field.aliases()));
+ } else {
+ recordFields.add(new RecordField(fieldName, dataType, field.defaultVal(), field.aliases()));
+ }
}
final RecordSchema recordSchema = new SimpleRecordSchema(recordFields, schemaText, AVRO_SCHEMA_FORMAT, schemaId);