----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/33171/#review80737 -----------------------------------------------------------
Thanks for the explanation. The patch looks good to me. - Jimmy Xiang On April 17, 2015, 8:30 p.m., Chaoyu Tang wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/33171/ > ----------------------------------------------------------- > > (Updated April 17, 2015, 8:30 p.m.) > > > Review request for hive, Ashutosh Chauhan, Szehon Ho, and Xuefu Zhang. > > > Bugs: HIVE-10307 > https://issues.apache.org/jira/browse/HIVE-10307 > > > Repository: hive-git > > > Description > ------- > > Data types like TinyInt, SmallInt, BigInt or Decimal can be expressed as > literals with postfix like Y, S, L, or BD appended to the number. These > literals work in most Hive queries, but do not when they are used as > partition column value. This patch is to address the issue of number literals > used in partition specification. > Highlights of the changes: > 1. Validate, convert and normalize the partVal in partSpec to match its > column type when hive.partition.check.column.type is set to true (default). > It not only applies to opertion insert which used to be controlled by > "hive.typecheck.on.insert", but also for other partition operations (e.g. > alter table .. partition, partition statistics etc). The > hive.typecheck.on.insert is now removed. > 2. Convert and normalize legacy partition column data by using alter table > partition .. rename with hive.partition.check.old.column.type.in.rename set > to true. this property only allows the partVal in old PartSpec to skip the > type check, conversion in partition rename. > > > Diffs > ----- > > common/src/java/org/apache/hadoop/hive/conf/HiveConf.java e138800 > ql/src/java/org/apache/hadoop/hive/ql/parse/BaseSemanticAnalyzer.java > 19234b5 > > ql/src/java/org/apache/hadoop/hive/ql/parse/ColumnStatsSemanticAnalyzer.java > e8066be > ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java > 8302067 > ql/src/test/queries/clientpositive/alter_partition_coltype.q 8c9945c > ql/src/test/queries/clientpositive/partition_coltype_literals.q > PRE-CREATION > ql/src/test/queries/clientpositive/partition_type_check.q c9bca99 > ql/src/test/results/clientnegative/archive_partspec1.q.out da4817c > ql/src/test/results/clientnegative/archive_partspec5.q.out c18de52 > ql/src/test/results/clientpositive/partition_coltype_literals.q.out > PRE-CREATION > ql/src/test/results/clientpositive/partition_timestamp.q.out bc6ab10 > ql/src/test/results/clientpositive/partition_timestamp2.q.out 365df69 > > Diff: https://reviews.apache.org/r/33171/diff/ > > > Testing > ------- > > 1. Manaully tests covering various number literals (Y, S, L, BD) > 2. new qfile test (partition_coltype_literals.q) > 3. Precommit build > > > Thanks, > > Chaoyu Tang > >