You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by su...@apache.org on 2015/09/10 19:20:02 UTC

hive git commit: HIVE-11761: DoubleWritable hashcode for GroupBy is not properly generated (Aihua Xu, reviewed by Chao Sun)

Repository: hive
Updated Branches:
  refs/heads/master 7a71e50d4 -> 701440734


HIVE-11761: DoubleWritable hashcode for GroupBy is not properly generated (Aihua Xu, reviewed by Chao Sun)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/70144073
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/70144073
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/70144073

Branch: refs/heads/master
Commit: 70144073466fb72b5903ede37d65b159d44a367a
Parents: 7a71e50
Author: Aihua Xu <ai...@gmail.com>
Authored: Thu Sep 10 10:18:24 2015 -0700
Committer: Chao Sun <su...@apache.org>
Committed: Thu Sep 10 10:18:33 2015 -0700

----------------------------------------------------------------------
 .../java/org/apache/hadoop/hive/ql/exec/KeyWrapperFactory.java   | 4 ++++
 1 file changed, 4 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/70144073/ql/src/java/org/apache/hadoop/hive/ql/exec/KeyWrapperFactory.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/KeyWrapperFactory.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/KeyWrapperFactory.java
index 22bd951..1c409a2 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/KeyWrapperFactory.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/KeyWrapperFactory.java
@@ -29,6 +29,7 @@ import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorUtils.Object
 import org.apache.hadoop.hive.serde2.objectinspector.primitive.StringObjectInspector;
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoFactory;
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoUtils;
+import org.apache.hadoop.io.DoubleWritable;
 import org.apache.hadoop.io.Text;
 
 public class KeyWrapperFactory {
@@ -114,6 +115,9 @@ public class KeyWrapperFactory {
             if(element instanceof LazyDouble) {
               long v = Double.doubleToLongBits(((LazyDouble)element).getWritableObject().get());
               hashcode = hashcode + (int) (v ^ (v >>> 32));
+            } else if (element instanceof DoubleWritable){
+              long v = Double.doubleToLongBits(((DoubleWritable)element).get());
+              hashcode = hashcode + (int) (v ^ (v >>> 32));
             } else {
               hashcode = hashcode + element.hashCode();
             }