[ https://issues.apache.org/jira/browse/HIVE-9033?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14238422#comment-14238422 ]
Sergio Peña commented on HIVE-9033: ----------------------------------- There is one test that still fails on Java8: ql/src/test/queries/clientpositive/parquet_map_null.q Java8 expects the following output: {noformat} < {"key1":null,"key2":"val2"} < {"key3":"val3","key4":null} < {"key3":"val3","key4":null} < {"key3":"val3","key4":null} < {"key3":"val3","key4":null} --- > {"key2":"val2","key1":null} > {"key4":null,"key3":"val3"} > {"key4":null,"key3":"val3"} > {"key4":null,"key3":"val3"} > {"key4":null,"key3":"val3"} {noformat} I found the problem is because the test is creating a parque table from an avro table; and avro is getting the map data as HashMap objects. This HashMap is returned by the Avro API. The line where this is happening is: {noformat} File: AvroGenericRecordReader.java public boolean next(NullWritable nullWritable, AvroGenericRecordWritable record) throws IOException { ... GenericData.Record r = (GenericData.Record)reader.next(); ... } {noformat} GenericData.Record is a list of HashMaps. > Fix ordering differences due to Java8 (part 2) > ---------------------------------------------- > > Key: HIVE-9033 > URL: https://issues.apache.org/jira/browse/HIVE-9033 > Project: Hive > Issue Type: Sub-task > Reporter: Sergio Peña > Assignee: Sergio Peña > Attachments: HIVE-9033.2.patch > > > Java 8 uses a different hash function for HashMap, which is leading to > iteration order differences in several cases. (See Java8 vs Java7) > This is a second part of ordering fixes to help divide the work with other > contributors. -- This message was sent by Atlassian JIRA (v6.3.4#6332)