[ https://issues.apache.org/jira/browse/HIVE-21240?focusedWorklogId=230702&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-230702 ]
ASF GitHub Bot logged work on HIVE-21240: ----------------------------------------- Author: ASF GitHub Bot Created on: 22/Apr/19 13:54 Start Date: 22/Apr/19 13:54 Worklog Time Spent: 10m Work Description: BELUGABEHR commented on pull request #530: HIVE-21240: JSON SerDe Deserialize Re-Write URL: https://github.com/apache/hive/pull/530#discussion_r277296726 ########## File path: ql/src/test/org/apache/hadoop/hive/ql/udf/generic/TestGenericUDFJsonRead.java ########## @@ -156,10 +158,8 @@ public void testUndeclaredStructField() throws Exception { ObjectInspector[] arguments = buildArguments("struct<a:int>"); udf.initialize(arguments); - Object res = udf.evaluate(evalArgs("{\"b\":null}")); - assertTrue(res instanceof Object[]); - Object o[] = (Object[]) res; - assertEquals(null, o[0]); + // Invalid - should throw Exception + udf.evaluate(evalArgs("{\"b\":null}")); Review comment: Good question. If you checkout the test method, it is annotated with `@Test(expected = HiveException.class)`. This means that the test will fail if it does not throw a HiveException. What causes it to throw the Exception is the call to `udf.evaluate(evalArgs("{\"b\":null}"))` therefore, everything that comes after it is dead code, so I simply removed it. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking ------------------- Worklog Id: (was: 230702) Time Spent: 2h (was: 1h 50m) > JSON SerDe Re-Write > ------------------- > > Key: HIVE-21240 > URL: https://issues.apache.org/jira/browse/HIVE-21240 > Project: Hive > Issue Type: Improvement > Components: Serializers/Deserializers > Affects Versions: 4.0.0, 3.1.1 > Reporter: David Mollitor > Assignee: David Mollitor > Priority: Major > Labels: pull-request-available > Fix For: 4.0.0 > > Attachments: HIVE-21240.1.patch, HIVE-21240.1.patch, > HIVE-21240.10.patch, HIVE-21240.11.patch, HIVE-21240.11.patch, > HIVE-21240.11.patch, HIVE-21240.11.patch, HIVE-21240.2.patch, > HIVE-21240.3.patch, HIVE-21240.4.patch, HIVE-21240.5.patch, > HIVE-21240.6.patch, HIVE-21240.7.patch, HIVE-21240.9.patch, > HIVE-24240.8.patch, kafka_storage_handler.diff > > Time Spent: 2h > Remaining Estimate: 0h > > The JSON SerDe has a few issues, I will link them to this JIRA. > * Use Jackson Tree parser instead of manually parsing > * Added support for base-64 encoded data (the expected format when using JSON) > * Added support to skip blank lines (returns all columns as null values) > * Current JSON parser accepts, but does not apply, custom timestamp formats > in most cases > * Added some unit tests > * Added cache for column-name to column-index searches, currently O\(n\) for > each row processed, for each column in the row -- This message was sent by Atlassian JIRA (v7.6.3#76005)