Chaoyu Tang created HIVE-10313:
----------------------------------

             Summary: Literal Decimal ExprNodeConstantDesc should contain value 
of HiveDecimal instead of String
                 Key: HIVE-10313
                 URL: https://issues.apache.org/jira/browse/HIVE-10313
             Project: Hive
          Issue Type: Bug
          Components: Query Processor
    Affects Versions: 1.0.0
            Reporter: Chaoyu Tang
            Assignee: Chaoyu Tang


In TyepCheckProcFactory.NumExprProcessor, the ExprNodeConstantDesc is created 
from strVal:
{code}
else if (expr.getText().endsWith("BD")) {
          // Literal decimal
          String strVal = expr.getText().substring(0, expr.getText().length() - 
2);
          HiveDecimal hd = HiveDecimal.create(strVal);
          int prec = 1;
          int scale = 0;
          if (hd != null) {
            prec = hd.precision();
            scale = hd.scale();
          }
          DecimalTypeInfo typeInfo = TypeInfoFactory.getDecimalTypeInfo(prec, 
scale);
          return new ExprNodeConstantDesc(typeInfo, strVal);
        } 
{code}
It should use HiveDecmal:
return new ExprNodeConstantDesc(typeInfo, hd);



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to