-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/14674/
-----------------------------------------------------------

(Updated Oct. 25, 2013, 5:21 a.m.)


Review request for hive and Ashutosh Chauhan.


Bugs: HIVE-3976
    https://issues.apache.org/jira/browse/HIVE-3976


Repository: hive-git


Description
-------

This patch is one of the major pieces to support precision/scale for Hive 
decimal data type. The following are the highlights:

1. Grammar changes to allow optional precision/scale.
2. Semantical check added for decimal precision/scale.
3. Type info and object inspector factory changes.
4. UDF changes
5. Precision/scale enforcement in relavent object inspectors.
6. Test case changes/fixes.
7. New test cases.


Diffs (updated)
-----

  common/src/java/org/apache/hadoop/hive/common/type/HiveDecimal.java cae8db6 
  common/src/test/org/apache/hadoop/hive/common/type/TestHiveDecimal.java 
PRE-CREATION 
  data/files/kv9.txt PRE-CREATION 
  jdbc/src/java/org/apache/hadoop/hive/jdbc/HiveResultSetMetaData.java 94b6ecd 
  jdbc/src/java/org/apache/hadoop/hive/jdbc/Utils.java bd98274 
  jdbc/src/test/org/apache/hadoop/hive/jdbc/TestJdbcDriver.java e1107dd 
  jdbc/src/test/org/apache/hive/jdbc/TestJdbcDriver2.java e667aa6 
  ql/src/java/org/apache/hadoop/hive/ql/Driver.java d14bbcb 
  ql/src/java/org/apache/hadoop/hive/ql/exec/FunctionRegistry.java 2a47c43 
  ql/src/java/org/apache/hadoop/hive/ql/exec/NumericOpMethodResolver.java 
48dd7fd 
  ql/src/java/org/apache/hadoop/hive/ql/io/orc/OrcStruct.java 65ee066 
  ql/src/java/org/apache/hadoop/hive/ql/io/orc/WriterImpl.java e4ade90 
  ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java 037191a 
  ql/src/java/org/apache/hadoop/hive/ql/parse/HiveParser.g 777bd88 
  ql/src/java/org/apache/hadoop/hive/ql/parse/ParseUtils.java 12a0a69 
  ql/src/java/org/apache/hadoop/hive/ql/parse/TypeCheckProcFactory.java cc0e663 
  ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPDivide.java b98a043 
  ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPPlus.java bfac0ce 
  ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFBridge.java 
c3c8ddc 
  ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFToDecimal.java 
60fe479 
  ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFToVarchar.java 
58eca86 
  ql/src/test/org/apache/hadoop/hive/ql/exec/TestFunctionRegistry.java 50613f3 
  ql/src/test/org/apache/hadoop/hive/ql/io/orc/TestOrcFile.java 42bf9e4 
  ql/src/test/org/apache/hadoop/hive/ql/parse/TestHiveDecimalParse.java 
PRE-CREATION 
  ql/src/test/queries/clientpositive/decimal_1.q 6c689e1 
  ql/src/test/queries/clientpositive/decimal_2.q 4890618 
  ql/src/test/queries/clientpositive/decimal_3.q 28211e3 
  ql/src/test/queries/clientpositive/decimal_4.q e8a89c1 
  ql/src/test/queries/clientpositive/decimal_5.q PRE-CREATION 
  ql/src/test/queries/clientpositive/decimal_6.q PRE-CREATION 
  ql/src/test/queries/clientpositive/decimal_join.q 589fc65 
  ql/src/test/queries/clientpositive/decimal_precision.q 403c2be 
  ql/src/test/queries/clientpositive/decimal_udf.q b5ff088 
  ql/src/test/queries/clientpositive/orc_predicate_pushdown.q df89802 
  ql/src/test/queries/clientpositive/ptf_decimal.q 03f435e 
  ql/src/test/queries/clientpositive/serde_regex.q 2a287bd 
  ql/src/test/queries/clientpositive/udf_pmod.q 9ff73d4 
  ql/src/test/queries/clientpositive/udf_to_double.q b0a248a 
  ql/src/test/queries/clientpositive/udf_to_float.q c91d18c 
  ql/src/test/queries/clientpositive/udf_to_string.q 3b585e7 
  ql/src/test/queries/clientpositive/windowing_expressions.q 2c33390 
  ql/src/test/queries/clientpositive/windowing_multipartitioning.q bb371e9 
  ql/src/test/queries/clientpositive/windowing_navfn.q 8a9d001 
  ql/src/test/queries/clientpositive/windowing_ntile.q 505c259 
  ql/src/test/queries/clientpositive/windowing_rank.q bf76867 
  ql/src/test/results/clientnegative/invalid_cast_from_binary_1.q.out 015a704 
  ql/src/test/results/clientnegative/invalid_cast_from_binary_2.q.out a8c6b88 
  ql/src/test/results/clientnegative/invalid_cast_from_binary_3.q.out d3247e3 
  ql/src/test/results/clientnegative/invalid_cast_from_binary_4.q.out c48186a 
  ql/src/test/results/clientnegative/invalid_cast_from_binary_5.q.out bc3719c 
  ql/src/test/results/clientnegative/invalid_cast_from_binary_6.q.out 19456ee 
  ql/src/test/results/clientnegative/wrong_column_type.q.out 37a2ffc 
  ql/src/test/results/clientpositive/decimal_1.q.out 71242eb 
  ql/src/test/results/clientpositive/decimal_2.q.out 0b90b64 
  ql/src/test/results/clientpositive/decimal_3.q.out 219c91a 
  ql/src/test/results/clientpositive/decimal_4.q.out b5cc9e6 
  ql/src/test/results/clientpositive/decimal_5.q.out PRE-CREATION 
  ql/src/test/results/clientpositive/decimal_6.q.out PRE-CREATION 
  ql/src/test/results/clientpositive/decimal_join.q.out 419fb7b 
  ql/src/test/results/clientpositive/decimal_precision.q.out cf392ec 
  ql/src/test/results/clientpositive/decimal_serde.q.out 138dbc0 
  ql/src/test/results/clientpositive/decimal_udf.q.out 4f8f088 
  ql/src/test/results/clientpositive/literal_decimal.q.out 1e93cd7 
  ql/src/test/results/clientpositive/orc_predicate_pushdown.q.out ba7cf1a 
  ql/src/test/results/clientpositive/ptf_decimal.q.out 2090829 
  ql/src/test/results/clientpositive/serde_regex.q.out f462dfa 
  ql/src/test/results/clientpositive/udf7.q.out 5f76d37 
  ql/src/test/results/clientpositive/udf_pmod.q.out cc06f1d 
  ql/src/test/results/clientpositive/udf_to_double.q.out 28e5089 
  ql/src/test/results/clientpositive/udf_to_float.q.out b96383b 
  ql/src/test/results/clientpositive/udf_to_string.q.out 664ff5c 
  ql/src/test/results/clientpositive/windowing_expressions.q.out 8544879 
  ql/src/test/results/clientpositive/windowing_multipartitioning.q.out 1953d6d 
  ql/src/test/results/clientpositive/windowing_navfn.q.out 3272d57 
  ql/src/test/results/clientpositive/windowing_ntile.q.out 36f738e 
  ql/src/test/results/clientpositive/windowing_rank.q.out df06348 
  serde/src/java/org/apache/hadoop/hive/serde2/RegexSerDe.java f2ddc73 
  serde/src/java/org/apache/hadoop/hive/serde2/io/HiveDecimalWritable.java 
acab539 
  serde/src/java/org/apache/hadoop/hive/serde2/lazy/LazyHiveDecimal.java 
3be28dd 
  
serde/src/java/org/apache/hadoop/hive/serde2/lazy/objectinspector/primitive/LazyHiveDecimalObjectInspector.java
 5618d0c 
  
serde/src/java/org/apache/hadoop/hive/serde2/lazy/objectinspector/primitive/LazyPrimitiveObjectInspectorFactory.java
 6f03979 
  
serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinaryHiveDecimal.java
 a1d0e4c 
  serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinarySerDe.java 
ab4eb56 
  
serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/JavaHiveDecimalObjectInspector.java
 113445e 
  
serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/PrimitiveObjectInspectorFactory.java
 fc0cee6 
  
serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableConstantHiveDecimalObjectInspector.java
 b6cb744 
  
serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveDecimalObjectInspector.java
 dc9c8fb 
  serde/src/java/org/apache/hadoop/hive/serde2/typeinfo/DecimalTypeInfo.java 
PRE-CREATION 
  serde/src/java/org/apache/hadoop/hive/serde2/typeinfo/HiveDecimalUtils.java 
PRE-CREATION 
  serde/src/java/org/apache/hadoop/hive/serde2/typeinfo/TypeInfo.java 36a7008 
  serde/src/java/org/apache/hadoop/hive/serde2/typeinfo/TypeInfoFactory.java 
13d1ec0 
  serde/src/java/org/apache/hadoop/hive/serde2/typeinfo/TypeInfoUtils.java 
d21abd4 
  serde/src/java/org/apache/hadoop/hive/serde2/typeinfo/VarcharTypeInfo.java 
5d6f3f4 

Diff: https://reviews.apache.org/r/14674/diff/


Testing
-------

All unit tests passed last time when I ran them. New tests also passed when 
tested manually.


Thanks,

Xuefu Zhang

Reply via email to