[
https://issues.apache.org/jira/browse/HIVE-8707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14213830#comment-14213830
]
Brock Noland commented on HIVE-8707:
------------------------------------
Thank you Mohit! The change looks great. I am wondering should we do something
to document that these maps should be a deterministic ordered map? For example
we could add a javadoc to their declaration, create a tiny wrapper
{{LinkedHashMap}} say called {{DeterminsiticOrderedMap}} or just put a comment
where we create the Map saying must be deterministic referencing this jIRA?
> Fix ordering differences due to Java 8 HashMap function
> -------------------------------------------------------
>
> Key: HIVE-8707
> URL: https://issues.apache.org/jira/browse/HIVE-8707
> Project: Hive
> Issue Type: Sub-task
> Reporter: Mohit Sabharwal
> Assignee: Mohit Sabharwal
> Attachments: HIVE-8707.1.patch, HIVE-8707.patch
>
>
> Java 8 uses a different hash function for HashMap, which is leading to
> iteration order differences in several cases. (See
> [Java8|http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/8-b132/java/util/HashMap.java?av=f#336]
> vs
> [Java7|http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/7-b147/java/util/HashMap.java#HashMap.hash%28int%29])
> For example:
> - In Explain output: Stages are numbered differently
> - In PostExecutePrinter hook, table order is different in lineage.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)