You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@gobblin.apache.org by hu...@apache.org on 2018/04/18 17:16:45 UTC
incubator-gobblin git commit: [GOBBLIN-468] Fix bug with enum for
json to avro converter
Repository: incubator-gobblin
Updated Branches:
refs/heads/master e386cf67e -> b11be3d60
[GOBBLIN-468] Fix bug with enum for json to avro converter
Closes #2341 from jack-moseley/enum-fix
Project: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/commit/b11be3d6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/tree/b11be3d6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/diff/b11be3d6
Branch: refs/heads/master
Commit: b11be3d60131b8ac5b35f901945b2dd6341bd2f2
Parents: e386cf6
Author: Jack Moseley <jm...@linkedin.com>
Authored: Wed Apr 18 10:16:34 2018 -0700
Committer: Hung Tran <hu...@linkedin.com>
Committed: Wed Apr 18 10:16:34 2018 -0700
----------------------------------------------------------------------
.../JsonElementConversionWithAvroSchemaFactory.java | 2 ++
.../JsonRecordAvroSchemaToAvroConverterTest.java | 2 ++
.../test/resources/converter/jsonToAvroRecord.json | 3 ++-
.../test/resources/converter/jsonToAvroSchema.avsc | 15 +++++++++++++++
4 files changed, 21 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-gobblin/blob/b11be3d6/gobblin-core/src/main/java/org/apache/gobblin/converter/avro/JsonElementConversionWithAvroSchemaFactory.java
----------------------------------------------------------------------
diff --git a/gobblin-core/src/main/java/org/apache/gobblin/converter/avro/JsonElementConversionWithAvroSchemaFactory.java b/gobblin-core/src/main/java/org/apache/gobblin/converter/avro/JsonElementConversionWithAvroSchemaFactory.java
index cc51874..f7a8e80 100644
--- a/gobblin-core/src/main/java/org/apache/gobblin/converter/avro/JsonElementConversionWithAvroSchemaFactory.java
+++ b/gobblin-core/src/main/java/org/apache/gobblin/converter/avro/JsonElementConversionWithAvroSchemaFactory.java
@@ -154,6 +154,8 @@ public class JsonElementConversionWithAvroSchemaFactory extends JsonElementConve
this.enumSet.addAll(schemaNode.getEnumSymbols());
this.enumName = schemaNode.getType().getName();
+
+ this.schema = schemaNode;
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-gobblin/blob/b11be3d6/gobblin-core/src/test/java/org/apache/gobblin/converter/avro/JsonRecordAvroSchemaToAvroConverterTest.java
----------------------------------------------------------------------
diff --git a/gobblin-core/src/test/java/org/apache/gobblin/converter/avro/JsonRecordAvroSchemaToAvroConverterTest.java b/gobblin-core/src/test/java/org/apache/gobblin/converter/avro/JsonRecordAvroSchemaToAvroConverterTest.java
index ed2dbb6..f59de8c 100644
--- a/gobblin-core/src/test/java/org/apache/gobblin/converter/avro/JsonRecordAvroSchemaToAvroConverterTest.java
+++ b/gobblin-core/src/test/java/org/apache/gobblin/converter/avro/JsonRecordAvroSchemaToAvroConverterTest.java
@@ -83,5 +83,7 @@ public class JsonRecordAvroSchemaToAvroConverterTest {
GenericRecord recordInArray = (GenericRecord) (((GenericArray) record.get("arrayOfRecords")).get(0));
Assert.assertEquals(recordInArray.get("field1").toString(), "test1");
+
+ Assert.assertEquals((record.get("enumField")).toString(), "ENUM2");
}
}
http://git-wip-us.apache.org/repos/asf/incubator-gobblin/blob/b11be3d6/gobblin-core/src/test/resources/converter/jsonToAvroRecord.json
----------------------------------------------------------------------
diff --git a/gobblin-core/src/test/resources/converter/jsonToAvroRecord.json b/gobblin-core/src/test/resources/converter/jsonToAvroRecord.json
index 7ab2c50..bbdd232 100644
--- a/gobblin-core/src/test/resources/converter/jsonToAvroRecord.json
+++ b/gobblin-core/src/test/resources/converter/jsonToAvroRecord.json
@@ -20,5 +20,6 @@
"field1": "test3",
"field2": "test4"
}
- ]
+ ],
+ "enumField": "ENUM2"
}
http://git-wip-us.apache.org/repos/asf/incubator-gobblin/blob/b11be3d6/gobblin-core/src/test/resources/converter/jsonToAvroSchema.avsc
----------------------------------------------------------------------
diff --git a/gobblin-core/src/test/resources/converter/jsonToAvroSchema.avsc b/gobblin-core/src/test/resources/converter/jsonToAvroSchema.avsc
index 0198eb8..2502f33 100644
--- a/gobblin-core/src/test/resources/converter/jsonToAvroSchema.avsc
+++ b/gobblin-core/src/test/resources/converter/jsonToAvroSchema.avsc
@@ -97,6 +97,21 @@
]
}
}
+ },
+ {
+ "name": "enumField",
+ "type": [
+ "null",
+ {
+ "name": "enum",
+ "symbols": [
+ "ENUM1",
+ "ENUM2",
+ "ENUM3"
+ ],
+ "type": "enum"
+ }
+ ]
}
]
}