You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ha...@apache.org on 2014/09/13 02:58:09 UTC

svn commit: r1624691 - /hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/optimizer/optiq/translator/ExprNodeConverter.java

Author: hashutosh
Date: Sat Sep 13 00:58:09 2014
New Revision: 1624691

URL: http://svn.apache.org/r1624691
Log:
HIVE-8087 : [CBO] Bug in constant conversion for Date type (Ashutosh Chauhan via John Pullokkaran)

Modified:
    hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/optimizer/optiq/translator/ExprNodeConverter.java

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/optimizer/optiq/translator/ExprNodeConverter.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/optimizer/optiq/translator/ExprNodeConverter.java?rev=1624691&r1=1624690&r2=1624691&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/optimizer/optiq/translator/ExprNodeConverter.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/optimizer/optiq/translator/ExprNodeConverter.java Sat Sep 13 00:58:09 2014
@@ -17,7 +17,9 @@
  */
 package org.apache.hadoop.hive.ql.optimizer.optiq.translator;
 
+import java.sql.Date;
 import java.util.ArrayList;
+import java.util.Calendar;
 import java.util.LinkedList;
 import java.util.List;
 
@@ -70,7 +72,7 @@ public class ExprNodeConverter extends R
   @Override
   public ExprNodeDesc visitCall(RexCall call) {
     ExprNodeGenericFuncDesc gfDesc = null;
-    
+
     if (!deep) {
       return null;
     }
@@ -130,7 +132,8 @@ public class ExprNodeConverter extends R
       return new ExprNodeConstantDesc(TypeInfoFactory.doubleTypeInfo,
           Double.valueOf(((Number) literal.getValue3()).doubleValue()));
     case DATE:
-      return new ExprNodeConstantDesc(TypeInfoFactory.dateTypeInfo, literal.getValue3());
+      return new ExprNodeConstantDesc(TypeInfoFactory.dateTypeInfo,
+        new Date(((Calendar)literal.getValue()).getTimeInMillis()));
     case TIMESTAMP:
       return new ExprNodeConstantDesc(TypeInfoFactory.timestampTypeInfo, literal.getValue3());
     case BINARY: