You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by dh...@apache.org on 2008/10/21 20:11:18 UTC
svn commit: r706704 [1/23] - in /hadoop/core/trunk: ./ src/contrib/hive/
src/contrib/hive/bin/
src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/
src/contrib/hive/common/src/java/org/apache/hadoop/hive/conf/
src/contrib/hive/conf/ src/contrib/hi...
Author: dhruba
Date: Tue Oct 21 11:11:05 2008
New Revision: 706704
URL: http://svn.apache.org/viewvc?rev=706704&view=rev
Log:
HADOOP-4230. Fix for serde2 interface, limit operator, select * operator,
UDF trim functions and sampling. (Ashish Thusoo via dhruba)
Added:
hadoop/core/trunk/src/contrib/hive/data/files/kv1_cb.txt
hadoop/core/trunk/src/contrib/hive/data/files/kv1_cc.txt
hadoop/core/trunk/src/contrib/hive/data/files/kv4.txt (with props)
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/FetchTask.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/LimitOperator.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/io/HiveRecordReader.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/fetchWork.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/limitDesc.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/showPartitionsDesc.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFCeil.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFFloor.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPNegative.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPPositive.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFRand.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFRound.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFSize.java
hadoop/core/trunk/src/contrib/hive/ql/src/test/org/apache/hadoop/hive/serde2/
hadoop/core/trunk/src/contrib/hive/ql/src/test/org/apache/hadoop/hive/serde2/TestSerDe.java
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientnegative/
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientnegative/strict_pruning.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/case_sensitivity.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/groupby1_limit.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/groupby2_limit.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input11_limit.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input14_limit.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input16.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input16_cc.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input1_limit.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input2_limit.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input4_cb_delim.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input_dfs.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input_dynamicserde.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input_limit.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input_part2.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input_testxpath2.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input_testxpath3.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/inputddl6.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/join9.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/nullinput.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/show_tables.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/showparts.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/subq2.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/udf3.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/udf4.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/negative/invalid_dot.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/negative/invalid_index.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/negative/invalid_list_index.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/negative/invalid_list_index2.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/negative/invalid_map_index.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/negative/invalid_map_index2.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/positive/case_sensitivity.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/positive/input_testxpath2.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/positive/udf4.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientnegative/
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientnegative/strict_pruning.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/case_sensitivity.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/groupby1_limit.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/groupby2_limit.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input11_limit.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input14_limit.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input16.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input16_cc.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input1_limit.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input2_limit.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input4_cb_delim.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input_dfs.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input_dynamicserde.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input_limit.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input_part2.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input_testxpath2.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input_testxpath3.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/inputddl6.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/join9.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/nullinput.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/show_tables.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/showparts.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/subq2.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/udf3.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/udf4.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/errors/invalid_dot.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/errors/invalid_index.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/errors/invalid_list_index.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/errors/invalid_list_index2.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/errors/invalid_map_index.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/errors/invalid_map_index2.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/parse/case_sensitivity.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/parse/input_testxpath2.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/parse/udf4.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/case_sensitivity.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/input_testxpath2.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/udf4.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/templates/TestNegativeCliDriver.vm
hadoop/core/trunk/src/contrib/hive/serde/if/test/
hadoop/core/trunk/src/contrib/hive/serde/if/test/complex.thrift
hadoop/core/trunk/src/contrib/hive/serde/if/test/testthrift.thrift
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeAsync.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeCommaOrSemicolon.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeConst.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeConstList.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeConstListContents.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeConstMap.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeConstMapContents.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeConstValue.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeDefinition.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeDefinitionType.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeEnum.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeEnumDef.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeEnumDefList.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeExtends.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeFieldRequiredness.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeFieldValue.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeFlagArgs.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeFunctionType.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeHeader.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeHeaderList.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeInclude.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeNamespace.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeSenum.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeSenumDef.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeSenumDefList.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeService.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeStart.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeThrows.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeTypeDefinition.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeUnflagArgs.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeXception.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/JJTthrift_grammarState.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/Node.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/ParseException.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/SimpleCharStream.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/SimpleNode.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/Token.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/TokenMgrError.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/thrift_grammar.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/thrift_grammar.jj
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/thrift_grammarConstants.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/thrift_grammarTokenManager.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/dynamic_type/thrift_grammarTreeConstants.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/thrift/
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/thrift/test/
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/thrift/test/Complex.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/thrift/test/Constants.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde2/thrift/test/IntString.java
hadoop/core/trunk/src/contrib/hive/serde/src/gen-py/org_apache_hadoop_hive_serde/
hadoop/core/trunk/src/contrib/hive/serde/src/gen-py/org_apache_hadoop_hive_serde/__init__.py
hadoop/core/trunk/src/contrib/hive/serde/src/gen-py/org_apache_hadoop_hive_serde/constants.py
hadoop/core/trunk/src/contrib/hive/serde/src/gen-py/org_apache_hadoop_hive_serde/ttypes.py
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDe.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeField.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeFieldList.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeFieldType.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeFunction.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeSimpleNode.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeStruct.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeStructBase.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeTypeBase.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeTypeBool.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeTypeByte.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeTypeDouble.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeTypeList.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeTypeMap.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeTypeSet.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeTypeString.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeTypedef.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeTypei16.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeTypei32.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/DynamicSerDeTypei64.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/dynamic_type/thrift_grammar.jjt
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/thrift/
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/thrift/ConfigurableTProtocol.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/thrift/TCTLSeparatedProtocol.java
hadoop/core/trunk/src/contrib/hive/serde/src/test/org/apache/hadoop/hive/serde2/TestTCTLSeparatedProtocol.java
hadoop/core/trunk/src/contrib/hive/serde/src/test/org/apache/hadoop/hive/serde2/dynamic_type/
hadoop/core/trunk/src/contrib/hive/serde/src/test/org/apache/hadoop/hive/serde2/dynamic_type/TestDynamicSerDe.java
Removed:
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/OperatorInfoList.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/thrift/Complex.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/thrift/Constants.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/thrift/IntString.java
hadoop/core/trunk/src/contrib/hive/serde/if/testthrift.thrift
hadoop/core/trunk/src/contrib/hive/serde/src/gen-py/serde/__init__.py
hadoop/core/trunk/src/contrib/hive/serde/src/gen-py/serde/constants.py
hadoop/core/trunk/src/contrib/hive/serde/src/gen-py/serde/ttypes.py
hadoop/core/trunk/src/contrib/hive/serde/src/test/org/apache/hadoop/hive/serde/TestTCTLSeparatedProtocol.java
hadoop/core/trunk/src/contrib/hive/serde/src/test/org/apache/hadoop/hive/serde2/thrift_test/Complex.java
hadoop/core/trunk/src/contrib/hive/serde/src/test/org/apache/hadoop/hive/serde2/thrift_test/Constants.java
hadoop/core/trunk/src/contrib/hive/serde/src/test/org/apache/hadoop/hive/serde2/thrift_test/IntString.java
Modified:
hadoop/core/trunk/CHANGES.txt
hadoop/core/trunk/src/contrib/hive/bin/hive
hadoop/core/trunk/src/contrib/hive/build-common.xml
hadoop/core/trunk/src/contrib/hive/build.xml
hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java
hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/CliSessionState.java
hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/OptionsProcessor.java
hadoop/core/trunk/src/contrib/hive/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
hadoop/core/trunk/src/contrib/hive/conf/hive-default.xml
hadoop/core/trunk/src/contrib/hive/metastore/if/hive_metastore.thrift
hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java
hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java
hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/IMetaStoreClient.java
hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreClient.java
hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java
hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/ObjectStore.java
hadoop/core/trunk/src/contrib/hive/ql/build.xml
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/Context.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/Driver.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnInfo.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/ExecDriver.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/ExecMapper.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/ExecReducer.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainTask.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/ExprNodeFieldEvaluator.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/ExprNodeIndexEvaluator.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/FileSinkOperator.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/FunctionRegistry.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/MapRedTask.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/Operator.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/OperatorFactory.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/ReduceSinkOperator.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/Task.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/TaskFactory.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/UDF.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/exec/Utilities.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/io/HiveInputFormat.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/metadata/Partition.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/metadata/Table.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/BaseSemanticAnalyzer.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/ErrorMsg.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/ExplainSemanticAnalyzer.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/FunctionSemanticAnalyzer.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/LoadSemanticAnalyzer.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/PartitionPruner.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/QB.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/QBMetaData.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/QBParseInfo.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/RowResolver.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/DDLWork.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/alterTableDesc.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/createTableDesc.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/descTableDesc.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/dropTableDesc.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/exprNodeColumnDesc.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/exprNodeFieldDesc.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/loadFileDesc.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/mapredWork.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/reduceSinkDesc.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/plan/tableDesc.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/typeinfo/StructTypeInfo.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDAFAvg.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDAFCount.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDAFMax.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDAFMin.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDAFSum.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFBaseCompare.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFConcat.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFDefaultSampleHashFn.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFLTrim.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFLike.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFLower.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPAnd.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPBitAnd.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPBitNot.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPBitOr.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPBitXor.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPDivide.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPMinus.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPMod.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPMultiply.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPNot.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPNotNull.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPNull.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPOr.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFOPPlus.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFRTrim.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFRegExp.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFRegExpReplace.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFStrEq.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFStrGe.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFStrGt.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFStrLe.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFStrLt.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFStrNe.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFSubstr.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFToBoolean.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFToByte.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFToDate.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFToDouble.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFToFloat.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFToInteger.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFToLong.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFToString.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFTrim.java
hadoop/core/trunk/src/contrib/hive/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFUpper.java
hadoop/core/trunk/src/contrib/hive/ql/src/test/org/apache/hadoop/hive/ql/QTestUtil.java
hadoop/core/trunk/src/contrib/hive/ql/src/test/org/apache/hadoop/hive/ql/exec/TestExecDriver.java
hadoop/core/trunk/src/contrib/hive/ql/src/test/org/apache/hadoop/hive/ql/metadata/TestHive.java
hadoop/core/trunk/src/contrib/hive/ql/src/test/org/apache/hadoop/hive/ql/udf/UDFTestLength.java
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input3.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input_part1.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/input_testxpath.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/inputddl4.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/clientpositive/udf2.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/queries/positive/input_testxpath.q
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/cast1.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/groupby1.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/groupby2.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/groupby3.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/groupby4.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/groupby5.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/groupby6.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/groupby7.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/groupby8.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input1.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input10.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input11.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input12.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input13.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input14.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input15.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input3.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input4.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input5.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input6.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input7.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input8.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input9.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input_part1.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input_testsequencefile.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/input_testxpath.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/inputddl1.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/inputddl2.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/inputddl3.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/inputddl4.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/inputddl5.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/join1.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/join2.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/join3.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/join4.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/join5.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/join6.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/join7.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/join8.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/sample1.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/sample2.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/sample4.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/sample5.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/sample6.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/sample7.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/subq.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/udf1.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/udf2.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/clientpositive/union.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/parse/input_testxpath.q.out
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/cast1.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/groupby1.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/groupby2.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/groupby3.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/groupby4.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/groupby5.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/groupby6.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/input1.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/input2.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/input3.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/input4.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/input5.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/input6.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/input7.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/input8.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/input9.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/input_part1.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/input_testsequencefile.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/input_testxpath.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/join1.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/join2.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/join3.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/join4.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/join5.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/join6.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/join7.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/join8.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/sample1.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/sample2.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/sample3.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/sample4.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/sample5.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/sample6.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/sample7.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/subq.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/udf1.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/results/compiler/plan/union.q.xml
hadoop/core/trunk/src/contrib/hive/ql/src/test/templates/TestParseNegative.vm
hadoop/core/trunk/src/contrib/hive/serde/build.xml
hadoop/core/trunk/src/contrib/hive/serde/if/serde.thrift
hadoop/core/trunk/src/contrib/hive/serde/src/gen-java/org/apache/hadoop/hive/serde/Constants.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde/ByteStreamTypedSerDe.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde/ReflectionSerDeField.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde/SerDe.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde/dynamic_type/DynamicSerDe.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde/jute/JuteSerDe.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde/simple_meta/MetadataTypedColumnsetSerDe.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde/thrift/ThriftByteStreamTypedSerDe.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde/thrift/ThriftSerDe.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde/thrift/ThriftSerDeField.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde/thrift/columnsetSerDe.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/Deserializer.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/MetadataTypedColumnsetSerDe.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/SerDeUtils.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/Serializer.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/ThriftByteStreamTypedSerDe.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/ThriftDeserializer.java
hadoop/core/trunk/src/contrib/hive/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/ReflectionStructObjectInspector.java
hadoop/core/trunk/src/contrib/hive/serde/src/test/org/apache/hadoop/hive/serde/TestSerDeUtils.java
hadoop/core/trunk/src/contrib/hive/serde/src/test/org/apache/hadoop/hive/serde2/objectinspector/TestObjectInspectorUtils.java
hadoop/core/trunk/src/contrib/hive/serde/src/test/org/apache/hadoop/hive/serde2/objectinspector/TestThriftObjectInspectors.java
hadoop/core/trunk/src/contrib/hive/testutils/run_tests
Modified: hadoop/core/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/CHANGES.txt?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/CHANGES.txt (original)
+++ hadoop/core/trunk/CHANGES.txt Tue Oct 21 11:11:05 2008
@@ -1006,6 +1006,9 @@
particular mapred.tasktracker.tasks.maxmemory and mapred.task.max.memory.
(Hemanth Yamijala via omalley)
+ HADOOP-4230. Fix for serde2 interface, limit operator, select * operator,
+ UDF trim functions and sampling. (Ashish Thusoo via dhruba)
+
Release 0.18.2 - Unreleased
BUG FIXES
Modified: hadoop/core/trunk/src/contrib/hive/bin/hive
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/bin/hive?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/bin/hive (original)
+++ hadoop/core/trunk/src/contrib/hive/bin/hive Tue Oct 21 11:11:05 2008
@@ -48,19 +48,36 @@
# add the auxillary jars such as serdes
if [ -d "${HIVE_AUX_JARS_PATH}" ]; then
for f in ${HIVE_AUX_JARS_PATH}/*.jar; do
- AUX_CLASSPATH=${AUX_CLASSPATH}:$f;
+ if [[ ! -f $f ]]; then
+ continue;
+ fi
+ AUX_CLASSPATH=${AUX_CLASSPATH}:$f
if [ "${AUX_PARAM}" == "" ]; then
- AUX_PARAM=$f
+ AUX_PARAM=file://$f
else
- AUX_PARAM=${AUX_PARAM},$f;
+ AUX_PARAM=${AUX_PARAM},file://$f;
fi
done
-else
+elif [ "${HIVE_AUX_JARS_PATH}" != "" ]; then
AUX_CLASSPATH=${HIVE_AUX_JARS_PATH}
- AUX_PARAM=${HIVE_AUX_JARS_PATH}
+ AUX_PARAM=file://${HIVE_AUX_JARS_PATH}
+ AUX_PARAM=`echo $AUX_PARAM | sed 's/,/,file:\/\//g'`
fi
-CLASSPATH=${CLASSPATH}:${AUX_CLASSPATH}
+# adding jars from auxlib directory
+for f in ${HIVE_HOME}/auxlib/*.jar; do
+ if [[ ! -f $f ]]; then
+ continue;
+ fi
+
+ AUX_CLASSPATH=${AUX_CLASSPATH}:$f
+ if [ "${AUX_PARAM}" == "" ]; then
+ AUX_PARAM=file://$f
+ else
+ AUX_PARAM=${AUX_PARAM},file://$f;
+ fi
+done
+CLASSPATH=${CLASSPATH}:${AUX_CLASSPATH}
# pass classpath to hadoop
export HADOOP_CLASSPATH=${CLASSPATH}
@@ -79,23 +96,24 @@
HADOOP=$HADOOP_HOME/bin/hadoop
if [ ! -f ${HADOOP} ]; then
- echo "Cannot find hadoop installation: \"$HADOOP\" does not exist";
+ echo "Cannot find hadoop installation: \$HADOOP_HOME must be set or hadoop must be in the path";
exit 4;
fi
# override default value of hadoop.bin.path to point to what we are running off
# if the user specified a -D override - this will be further overriden
-export HADOOP_OPTS="$HADOOP_OPTS -Dhadoop.bin.path=$HADOOP"
+export HIVE_OPTS="-hiveconf hadoop.bin.path=$HADOOP"
CLASS=org.apache.hadoop.hive.cli.CliDriver
if [ "${AUX_PARAM}" != "" ]; then
- HADOOP_OPTS="-Dhive.aux.jars.path=${AUX_PARAM}"
+ HIVE_OPTS="$HIVE_OPTS -hiveconf hive.aux.jars.path=${AUX_PARAM}"
AUX_JARS_CMD_LINE="-libjars ${AUX_PARAM}"
fi
#echo "CLASSPATH="$CLASSPATH
#echo "AUX_LIB_PATH"=$AUX_PARAM
#echo "HADOOP_OPTS="$HADOOP_OPTS
# note: $@ only works in "$@"
-exec $HADOOP jar $AUX_JARS_CMD_LINE ${HIVE_LIB}/hive_cli.jar $CLASS "$@"
+#echo $HADOOP jar $AUX_JARS_CMD_LINE ${HIVE_LIB}/hive_cli.jar $CLASS $HIVE_OPTS "$@"
+exec $HADOOP jar $AUX_JARS_CMD_LINE ${HIVE_LIB}/hive_cli.jar $CLASS $HIVE_OPTS "$@"
Modified: hadoop/core/trunk/src/contrib/hive/build-common.xml
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/build-common.xml?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/build-common.xml (original)
+++ hadoop/core/trunk/src/contrib/hive/build-common.xml Tue Oct 21 11:11:05 2008
@@ -53,6 +53,7 @@
<property name="test.build.classes" value="${test.build.dir}/classes"/>
<property name="test.build.javadoc" value="${test.build.dir}/docs/api"/>
<property name="test.include" value="Test*"/>
+ <property name="test.exclude" value="TestSerDe"/>
<property name="test.classpath.id" value="test.classpath"/>
<property name="test.output" value="true"/>
<property name="test.timeout" value="900000"/>
@@ -64,6 +65,7 @@
<pathelement location="${hadoop.conf.dir}"/>
<pathelement location="${test.data.dir}/conf"/>
<pathelement location="${hive.conf.dir}"/>
+ <fileset dir="${test.src.data.dir}" includes="files/*.jar"/>
<path refid="classpath"/>
</path>
@@ -95,6 +97,7 @@
<pathelement location="${hadoop.root}/build/contrib/hive/metastore/classes"/>
<pathelement location="${hadoop.root}/build/contrib/hive/ql/classes"/>
<pathelement location="${hadoop.root}/build/contrib/hive/cli/classes"/>
+ <fileset dir="${test.src.data.dir}" includes="files/*.jar"/>
<fileset dir="${basedir}" includes="lib/*.jar"/>
<path refid="common-classpath"/>
</path>
@@ -215,7 +218,7 @@
<sysproperty key="test.output.overwrite" value="${overwrite}"/>
<sysproperty key="log4j.configuration" value="file://${test.data.dir}/conf/hive-log4j.properties"/>
<sysproperty key="derby.stream.error.file" value="${test.build.dir}/derby.log"/>
- <sysproperty key="hive.aux.jars.path" value="file://${test.build.dir}/test-udfs.jar"/>
+ <sysproperty key="hive.aux.jars.path" value="${test.build.dir}/test-udfs.jar,${test.src.data.dir}/files/TestSerDe.jar"/>
<classpath refid="${test.classpath.id}"/>
<formatter type="${test.junit.output.format}" />
<batchtest todir="${test.build.dir}" unless="testcase">
Modified: hadoop/core/trunk/src/contrib/hive/build.xml
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/build.xml?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/build.xml (original)
+++ hadoop/core/trunk/src/contrib/hive/build.xml Tue Oct 21 11:11:05 2008
@@ -140,9 +140,11 @@
<copy file="${basedir}/conf/hive-log4j.properties" todir="${target.conf.dir}"/>
<copy file="${basedir}/conf/jpox.properties" todir="${target.conf.dir}"/>
<copy todir="${target.lib.dir}/php">
+ <fileset dir="${hive.root}/serde/src/gen-php"/>
<fileset dir="${hive.root}/metastore/src/gen-php"/>
</copy>
<copy todir="${target.lib.dir}/py">
+ <fileset dir="${hive.root}/serde/src/gen-py"/>
<fileset dir="${hive.root}/metastore/src/gen-py"/>
</copy>
<copy todir="${target.lib.dir}" preservelastmodified="true" flatten="true">
Modified: hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java (original)
+++ hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java Tue Oct 21 11:11:05 2008
@@ -23,6 +23,7 @@
import java.io.*;
import java.util.*;
+import org.apache.hadoop.fs.FsShell;
import org.apache.hadoop.hive.conf.HiveConf;
import org.apache.hadoop.hive.ql.exec.Utilities;
import org.apache.hadoop.hive.ql.exec.Utilities.StreamPrinter;
@@ -35,9 +36,11 @@
public class CliDriver {
public final static String prompt = "hive";
+ public final static String prompt2 = " "; // when ';' is not yet seen
public static SetProcessor sp;
public static Driver qp;
+ public static FsShell dfs;
public CliDriver(CliSessionState ss) {
SessionState.start(ss);
@@ -81,30 +84,46 @@
catch (Exception e) {
e.printStackTrace();
}
-
- }
- else {
+ } else if (cmd.startsWith("dfs")) {
+ // dfs shell commands
+ SessionState ss = SessionState.get();
+ if(dfs == null)
+ dfs = new FsShell(ss.getConf());
+ String hadoopCmd = cmd.replaceFirst("dfs\\s+", "");
+ hadoopCmd = hadoopCmd.trim();
+ if (hadoopCmd.endsWith(";")) {
+ hadoopCmd = hadoopCmd.substring(0, hadoopCmd.length()-1);
+ }
+ String[] args = hadoopCmd.split("\\s+");
+ try {
+ PrintStream oldOut = System.out;
+ System.setOut(ss.out);
+ int val = dfs.run(args);
+ System.setOut(oldOut);
+ if (val != 0) {
+ ss.err.write((new String("Command failed with exit code = " + val)).getBytes());
+ }
+ } catch (Exception e) {
+ ss.err.println("Exception raised from DFSShell.run " + e.getLocalizedMessage());
+ }
+ } else {
ret = qp.run(cmd);
- Vector<Vector<String>> res = new Vector<Vector<String>>();
+ Vector<String> res = new Vector<String>();
while (qp.getResults(res)) {
- SessionState ss = SessionState.get();
- PrintStream out = ss.out;
-
- for (Vector<String> row:res)
- {
- boolean firstCol = true;
- for (String col:row)
- {
- if (!firstCol)
- out.write(Utilities.tabCode);
- out.print(col == null ? Utilities.nullStringOutput : col);
- firstCol = false;
- }
- out.write(Utilities.newLineCode);
- }
+ for (String r:res) {
+ SessionState ss = SessionState.get();
+ PrintStream out = ss.out;
+ out.println(r);
+ }
res.clear();
}
+
+ int cret = qp.close();
+ if (ret == 0) {
+ ret = cret;
+ }
}
+
return ret;
}
@@ -162,8 +181,15 @@
System.exit(2);
}
+ // set all properties specified via command line
+ HiveConf conf = ss.getConf();
+ for(Map.Entry<Object, Object> item: ss.cmdProperties.entrySet()) {
+ conf.set((String) item.getKey(), (String) item.getValue());
+ }
+
sp = new SetProcessor();
qp = new Driver();
+ dfs = new FsShell(ss.getConf());
if(ss.execString != null) {
System.exit(processLine(ss.execString));
@@ -199,9 +225,20 @@
int ret = 0;
Log LOG = LogFactory.getLog("CliDriver");
LogHelper console = new LogHelper(LOG);
- while ((line = reader.readLine(prompt+"> ")) != null) {
+ String prefix = "";
+ String curPrompt = prompt;
+ while ((line = reader.readLine(curPrompt+"> ")) != null) {
long start = System.currentTimeMillis();
- ret = processLine(line);
+ if(line.trim().endsWith(";")) {
+ line = prefix + " " + line;
+ ret = processLine(line);
+ prefix = "";
+ curPrompt = prompt;
+ } else {
+ prefix = prefix + line;
+ curPrompt = prompt2;
+ continue;
+ }
long end = System.currentTimeMillis();
if (end > start) {
double timeTaken = (double)(end-start)/1000.0;
Modified: hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/CliSessionState.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/CliSessionState.java?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/CliSessionState.java (original)
+++ hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/CliSessionState.java Tue Oct 21 11:11:05 2008
@@ -18,6 +18,8 @@
package org.apache.hadoop.hive.cli;
+import java.util.Properties;
+
import org.apache.hadoop.hive.ql.session.SessionState;
import org.apache.hadoop.hive.conf.HiveConf;
import org.apache.hadoop.hive.ql.metadata.Hive;
@@ -33,6 +35,11 @@
*/
public String fileName;
+ /**
+ * properties set from -hiveconf via cmdline
+ */
+ public Properties cmdProperties = new Properties();
+
public CliSessionState() {
super();
Modified: hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/OptionsProcessor.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/OptionsProcessor.java?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/OptionsProcessor.java (original)
+++ hadoop/core/trunk/src/contrib/hive/cli/src/java/org/apache/hadoop/hive/cli/OptionsProcessor.java Tue Oct 21 11:11:05 2008
@@ -200,6 +200,15 @@
printUsage("-e and -f option cannot be specified simultaneously");
return false;
}
+
+ List<String> hiveConfArgs = (List<String>)cmdLine.getValue(confOptions);
+ if (null != hiveConfArgs){
+ for(String s : hiveConfArgs){
+ String []parts = s.split("=", 2);
+ ss.cmdProperties.setProperty(parts[0], parts[1]);
+ }
+ }
+
return true;
}
Modified: hadoop/core/trunk/src/contrib/hive/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java (original)
+++ hadoop/core/trunk/src/contrib/hive/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java Tue Oct 21 11:11:05 2008
@@ -80,6 +80,7 @@
// for hive script operator
HIVETABLENAME("hive.table.name", ""),
HIVEPARTITIONNAME("hive.partition.name", ""),
+ HIVEPARTITIONPRUNER("hive.partition.pruning", "nonstrict"),
HIVEALIAS("hive.alias", "");
public final String varname;
@@ -170,13 +171,13 @@
// let's add the hive configuration
URL hconfurl = getClassLoader().getResource("hive-default.xml");
if(hconfurl == null) {
- l4j.warn("Unable to locate default hive configuration");
+ l4j.debug("hive-default.xml not found.");
} else {
addResource(hconfurl);
}
URL hsiteurl = getClassLoader().getResource("hive-site.xml");
if(hsiteurl == null) {
- l4j.warn("Unable to locate hive site configuration");
+ l4j.debug("hive-site.xml not found.");
} else {
addResource(hsiteurl);
}
Modified: hadoop/core/trunk/src/contrib/hive/conf/hive-default.xml
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/conf/hive-default.xml?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/conf/hive-default.xml (original)
+++ hadoop/core/trunk/src/contrib/hive/conf/hive-default.xml Tue Oct 21 11:11:05 2008
@@ -9,6 +9,21 @@
<!-- users do not have to edit hadoop configuration files (that may be managed as a centralized -->
<!-- resource). -->
+<!-- Hadoop Setup -->
+<property>
+ <name>hadoop.bin.path</name>
+ <value>${user.dir}/../../../bin/hadoop</value>
+ <!-- note that the hive shell script also uses this property name -->
+ <description>Path to hadoop binary. Assumes that by default we are executing from hive</description>
+</property>
+
+<property>
+ <name>hadoop.config.dir</name>
+ <value>${user.dir}/../../../conf</value>
+ <!-- note that the hive shell script also uses this property name -->
+ <description>Path to hadoop configuration. Again assumes that by default we are executing from hive/</description>
+</property>
+
<!-- Hive Execution Parameters -->
<property>
<name>hive.exec.scratchdir</name>
Added: hadoop/core/trunk/src/contrib/hive/data/files/kv1_cb.txt
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/data/files/kv1_cb.txt?rev=706704&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/data/files/kv1_cb.txt (added)
+++ hadoop/core/trunk/src/contrib/hive/data/files/kv1_cb.txt Tue Oct 21 11:11:05 2008
@@ -0,0 +1,500 @@
+238val_238
+86val_86
+311val_311
+27val_27
+165val_165
+409val_409
+255val_255
+278val_278
+98val_98
+484val_484
+265val_265
+193val_193
+401val_401
+150val_150
+273val_273
+224val_224
+369val_369
+66val_66
+128val_128
+213val_213
+146val_146
+406val_406
+429val_429
+374val_374
+152val_152
+469val_469
+145val_145
+495val_495
+37val_37
+327val_327
+281val_281
+277val_277
+209val_209
+15val_15
+82val_82
+403val_403
+166val_166
+417val_417
+430val_430
+252val_252
+292val_292
+219val_219
+287val_287
+153val_153
+193val_193
+338val_338
+446val_446
+459val_459
+394val_394
+237val_237
+482val_482
+174val_174
+413val_413
+494val_494
+207val_207
+199val_199
+466val_466
+208val_208
+174val_174
+399val_399
+396val_396
+247val_247
+417val_417
+489val_489
+162val_162
+377val_377
+397val_397
+309val_309
+365val_365
+266val_266
+439val_439
+342val_342
+367val_367
+325val_325
+167val_167
+195val_195
+475val_475
+17val_17
+113val_113
+155val_155
+203val_203
+339val_339
+0val_0
+455val_455
+128val_128
+311val_311
+316val_316
+57val_57
+302val_302
+205val_205
+149val_149
+438val_438
+345val_345
+129val_129
+170val_170
+20val_20
+489val_489
+157val_157
+378val_378
+221val_221
+92val_92
+111val_111
+47val_47
+72val_72
+4val_4
+280val_280
+35val_35
+427val_427
+277val_277
+208val_208
+356val_356
+399val_399
+169val_169
+382val_382
+498val_498
+125val_125
+386val_386
+437val_437
+469val_469
+192val_192
+286val_286
+187val_187
+176val_176
+54val_54
+459val_459
+51val_51
+138val_138
+103val_103
+239val_239
+213val_213
+216val_216
+430val_430
+278val_278
+176val_176
+289val_289
+221val_221
+65val_65
+318val_318
+332val_332
+311val_311
+275val_275
+137val_137
+241val_241
+83val_83
+333val_333
+180val_180
+284val_284
+12val_12
+230val_230
+181val_181
+67val_67
+260val_260
+404val_404
+384val_384
+489val_489
+353val_353
+373val_373
+272val_272
+138val_138
+217val_217
+84val_84
+348val_348
+466val_466
+58val_58
+8val_8
+411val_411
+230val_230
+208val_208
+348val_348
+24val_24
+463val_463
+431val_431
+179val_179
+172val_172
+42val_42
+129val_129
+158val_158
+119val_119
+496val_496
+0val_0
+322val_322
+197val_197
+468val_468
+393val_393
+454val_454
+100val_100
+298val_298
+199val_199
+191val_191
+418val_418
+96val_96
+26val_26
+165val_165
+327val_327
+230val_230
+205val_205
+120val_120
+131val_131
+51val_51
+404val_404
+43val_43
+436val_436
+156val_156
+469val_469
+468val_468
+308val_308
+95val_95
+196val_196
+288val_288
+481val_481
+457val_457
+98val_98
+282val_282
+197val_197
+187val_187
+318val_318
+318val_318
+409val_409
+470val_470
+137val_137
+369val_369
+316val_316
+169val_169
+413val_413
+85val_85
+77val_77
+0val_0
+490val_490
+87val_87
+364val_364
+179val_179
+118val_118
+134val_134
+395val_395
+282val_282
+138val_138
+238val_238
+419val_419
+15val_15
+118val_118
+72val_72
+90val_90
+307val_307
+19val_19
+435val_435
+10val_10
+277val_277
+273val_273
+306val_306
+224val_224
+309val_309
+389val_389
+327val_327
+242val_242
+369val_369
+392val_392
+272val_272
+331val_331
+401val_401
+242val_242
+452val_452
+177val_177
+226val_226
+5val_5
+497val_497
+402val_402
+396val_396
+317val_317
+395val_395
+58val_58
+35val_35
+336val_336
+95val_95
+11val_11
+168val_168
+34val_34
+229val_229
+233val_233
+143val_143
+472val_472
+322val_322
+498val_498
+160val_160
+195val_195
+42val_42
+321val_321
+430val_430
+119val_119
+489val_489
+458val_458
+78val_78
+76val_76
+41val_41
+223val_223
+492val_492
+149val_149
+449val_449
+218val_218
+228val_228
+138val_138
+453val_453
+30val_30
+209val_209
+64val_64
+468val_468
+76val_76
+74val_74
+342val_342
+69val_69
+230val_230
+33val_33
+368val_368
+103val_103
+296val_296
+113val_113
+216val_216
+367val_367
+344val_344
+167val_167
+274val_274
+219val_219
+239val_239
+485val_485
+116val_116
+223val_223
+256val_256
+263val_263
+70val_70
+487val_487
+480val_480
+401val_401
+288val_288
+191val_191
+5val_5
+244val_244
+438val_438
+128val_128
+467val_467
+432val_432
+202val_202
+316val_316
+229val_229
+469val_469
+463val_463
+280val_280
+2val_2
+35val_35
+283val_283
+331val_331
+235val_235
+80val_80
+44val_44
+193val_193
+321val_321
+335val_335
+104val_104
+466val_466
+366val_366
+175val_175
+403val_403
+483val_483
+53val_53
+105val_105
+257val_257
+406val_406
+409val_409
+190val_190
+406val_406
+401val_401
+114val_114
+258val_258
+90val_90
+203val_203
+262val_262
+348val_348
+424val_424
+12val_12
+396val_396
+201val_201
+217val_217
+164val_164
+431val_431
+454val_454
+478val_478
+298val_298
+125val_125
+431val_431
+164val_164
+424val_424
+187val_187
+382val_382
+5val_5
+70val_70
+397val_397
+480val_480
+291val_291
+24val_24
+351val_351
+255val_255
+104val_104
+70val_70
+163val_163
+438val_438
+119val_119
+414val_414
+200val_200
+491val_491
+237val_237
+439val_439
+360val_360
+248val_248
+479val_479
+305val_305
+417val_417
+199val_199
+444val_444
+120val_120
+429val_429
+169val_169
+443val_443
+323val_323
+325val_325
+277val_277
+230val_230
+478val_478
+178val_178
+468val_468
+310val_310
+317val_317
+333val_333
+493val_493
+460val_460
+207val_207
+249val_249
+265val_265
+480val_480
+83val_83
+136val_136
+353val_353
+172val_172
+214val_214
+462val_462
+233val_233
+406val_406
+133val_133
+175val_175
+189val_189
+454val_454
+375val_375
+401val_401
+421val_421
+407val_407
+384val_384
+256val_256
+26val_26
+134val_134
+67val_67
+384val_384
+379val_379
+18val_18
+462val_462
+492val_492
+100val_100
+298val_298
+9val_9
+341val_341
+498val_498
+146val_146
+458val_458
+362val_362
+186val_186
+285val_285
+348val_348
+167val_167
+18val_18
+273val_273
+183val_183
+281val_281
+344val_344
+97val_97
+469val_469
+315val_315
+84val_84
+28val_28
+37val_37
+448val_448
+152val_152
+348val_348
+307val_307
+194val_194
+414val_414
+477val_477
+222val_222
+126val_126
+90val_90
+169val_169
+403val_403
+400val_400
+200val_200
+97val_97
Added: hadoop/core/trunk/src/contrib/hive/data/files/kv1_cc.txt
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/data/files/kv1_cc.txt?rev=706704&view=auto
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/data/files/kv1_cc.txt (added)
+++ hadoop/core/trunk/src/contrib/hive/data/files/kv1_cc.txt Tue Oct 21 11:11:05 2008
@@ -0,0 +1,500 @@
+238val_238
+86val_86
+311val_311
+27val_27
+165val_165
+409val_409
+255val_255
+278val_278
+98val_98
+484val_484
+265val_265
+193val_193
+401val_401
+150val_150
+273val_273
+224val_224
+369val_369
+66val_66
+128val_128
+213val_213
+146val_146
+406val_406
+429val_429
+374val_374
+152val_152
+469val_469
+145val_145
+495val_495
+37val_37
+327val_327
+281val_281
+277val_277
+209val_209
+15val_15
+82val_82
+403val_403
+166val_166
+417val_417
+430val_430
+252val_252
+292val_292
+219val_219
+287val_287
+153val_153
+193val_193
+338val_338
+446val_446
+459val_459
+394val_394
+237val_237
+482val_482
+174val_174
+413val_413
+494val_494
+207val_207
+199val_199
+466val_466
+208val_208
+174val_174
+399val_399
+396val_396
+247val_247
+417val_417
+489val_489
+162val_162
+377val_377
+397val_397
+309val_309
+365val_365
+266val_266
+439val_439
+342val_342
+367val_367
+325val_325
+167val_167
+195val_195
+475val_475
+17val_17
+113val_113
+155val_155
+203val_203
+339val_339
+0val_0
+455val_455
+128val_128
+311val_311
+316val_316
+57val_57
+302val_302
+205val_205
+149val_149
+438val_438
+345val_345
+129val_129
+170val_170
+20val_20
+489val_489
+157val_157
+378val_378
+221val_221
+92val_92
+111val_111
+47val_47
+72val_72
+4val_4
+280val_280
+35val_35
+427val_427
+277val_277
+208val_208
+356val_356
+399val_399
+169val_169
+382val_382
+498val_498
+125val_125
+386val_386
+437val_437
+469val_469
+192val_192
+286val_286
+187val_187
+176val_176
+54val_54
+459val_459
+51val_51
+138val_138
+103val_103
+239val_239
+213val_213
+216val_216
+430val_430
+278val_278
+176val_176
+289val_289
+221val_221
+65val_65
+318val_318
+332val_332
+311val_311
+275val_275
+137val_137
+241val_241
+83val_83
+333val_333
+180val_180
+284val_284
+12val_12
+230val_230
+181val_181
+67val_67
+260val_260
+404val_404
+384val_384
+489val_489
+353val_353
+373val_373
+272val_272
+138val_138
+217val_217
+84val_84
+348val_348
+466val_466
+58val_58
+8val_8
+411val_411
+230val_230
+208val_208
+348val_348
+24val_24
+463val_463
+431val_431
+179val_179
+172val_172
+42val_42
+129val_129
+158val_158
+119val_119
+496val_496
+0val_0
+322val_322
+197val_197
+468val_468
+393val_393
+454val_454
+100val_100
+298val_298
+199val_199
+191val_191
+418val_418
+96val_96
+26val_26
+165val_165
+327val_327
+230val_230
+205val_205
+120val_120
+131val_131
+51val_51
+404val_404
+43val_43
+436val_436
+156val_156
+469val_469
+468val_468
+308val_308
+95val_95
+196val_196
+288val_288
+481val_481
+457val_457
+98val_98
+282val_282
+197val_197
+187val_187
+318val_318
+318val_318
+409val_409
+470val_470
+137val_137
+369val_369
+316val_316
+169val_169
+413val_413
+85val_85
+77val_77
+0val_0
+490val_490
+87val_87
+364val_364
+179val_179
+118val_118
+134val_134
+395val_395
+282val_282
+138val_138
+238val_238
+419val_419
+15val_15
+118val_118
+72val_72
+90val_90
+307val_307
+19val_19
+435val_435
+10val_10
+277val_277
+273val_273
+306val_306
+224val_224
+309val_309
+389val_389
+327val_327
+242val_242
+369val_369
+392val_392
+272val_272
+331val_331
+401val_401
+242val_242
+452val_452
+177val_177
+226val_226
+5val_5
+497val_497
+402val_402
+396val_396
+317val_317
+395val_395
+58val_58
+35val_35
+336val_336
+95val_95
+11val_11
+168val_168
+34val_34
+229val_229
+233val_233
+143val_143
+472val_472
+322val_322
+498val_498
+160val_160
+195val_195
+42val_42
+321val_321
+430val_430
+119val_119
+489val_489
+458val_458
+78val_78
+76val_76
+41val_41
+223val_223
+492val_492
+149val_149
+449val_449
+218val_218
+228val_228
+138val_138
+453val_453
+30val_30
+209val_209
+64val_64
+468val_468
+76val_76
+74val_74
+342val_342
+69val_69
+230val_230
+33val_33
+368val_368
+103val_103
+296val_296
+113val_113
+216val_216
+367val_367
+344val_344
+167val_167
+274val_274
+219val_219
+239val_239
+485val_485
+116val_116
+223val_223
+256val_256
+263val_263
+70val_70
+487val_487
+480val_480
+401val_401
+288val_288
+191val_191
+5val_5
+244val_244
+438val_438
+128val_128
+467val_467
+432val_432
+202val_202
+316val_316
+229val_229
+469val_469
+463val_463
+280val_280
+2val_2
+35val_35
+283val_283
+331val_331
+235val_235
+80val_80
+44val_44
+193val_193
+321val_321
+335val_335
+104val_104
+466val_466
+366val_366
+175val_175
+403val_403
+483val_483
+53val_53
+105val_105
+257val_257
+406val_406
+409val_409
+190val_190
+406val_406
+401val_401
+114val_114
+258val_258
+90val_90
+203val_203
+262val_262
+348val_348
+424val_424
+12val_12
+396val_396
+201val_201
+217val_217
+164val_164
+431val_431
+454val_454
+478val_478
+298val_298
+125val_125
+431val_431
+164val_164
+424val_424
+187val_187
+382val_382
+5val_5
+70val_70
+397val_397
+480val_480
+291val_291
+24val_24
+351val_351
+255val_255
+104val_104
+70val_70
+163val_163
+438val_438
+119val_119
+414val_414
+200val_200
+491val_491
+237val_237
+439val_439
+360val_360
+248val_248
+479val_479
+305val_305
+417val_417
+199val_199
+444val_444
+120val_120
+429val_429
+169val_169
+443val_443
+323val_323
+325val_325
+277val_277
+230val_230
+478val_478
+178val_178
+468val_468
+310val_310
+317val_317
+333val_333
+493val_493
+460val_460
+207val_207
+249val_249
+265val_265
+480val_480
+83val_83
+136val_136
+353val_353
+172val_172
+214val_214
+462val_462
+233val_233
+406val_406
+133val_133
+175val_175
+189val_189
+454val_454
+375val_375
+401val_401
+421val_421
+407val_407
+384val_384
+256val_256
+26val_26
+134val_134
+67val_67
+384val_384
+379val_379
+18val_18
+462val_462
+492val_492
+100val_100
+298val_298
+9val_9
+341val_341
+498val_498
+146val_146
+458val_458
+362val_362
+186val_186
+285val_285
+348val_348
+167val_167
+18val_18
+273val_273
+183val_183
+281val_281
+344val_344
+97val_97
+469val_469
+315val_315
+84val_84
+28val_28
+37val_37
+448val_448
+152val_152
+348val_348
+307val_307
+194val_194
+414val_414
+477val_477
+222val_222
+126val_126
+90val_90
+169val_169
+403val_403
+400val_400
+200val_200
+97val_97
Added: hadoop/core/trunk/src/contrib/hive/data/files/kv4.txt
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/data/files/kv4.txt?rev=706704&view=auto
==============================================================================
Binary file - no diff available.
Propchange: hadoop/core/trunk/src/contrib/hive/data/files/kv4.txt
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Modified: hadoop/core/trunk/src/contrib/hive/metastore/if/hive_metastore.thrift
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/metastore/if/hive_metastore.thrift?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/metastore/if/hive_metastore.thrift (original)
+++ hadoop/core/trunk/src/contrib/hive/metastore/if/hive_metastore.thrift Tue Oct 21 11:11:05 2008
@@ -161,8 +161,9 @@
// delete data (including partitions) if deleteData is set to true
void drop_table(1:string dbname, 2:string name, 3:bool deleteData)
throws(1:NoSuchObjectException o1, 2:MetaException o3)
- list<string> get_tables(string db_name, string pattern)
- throws (MetaException o1, UnknownTableException o2, UnknownDBException o3)
+ list<string> get_tables(string db_name, string pattern)
+ throws (MetaException o1)
+
Table get_table(1:string dbname, 2:string tbl_name)
throws (1:MetaException o1, 2:NoSuchObjectException o2)
// alter table applies to only future partitions not for existing partitions
Modified: hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java (original)
+++ hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java Tue Oct 21 11:11:05 2008
@@ -77,6 +77,7 @@
};
// The next serial number to be assigned
+ private boolean checkForDefaultDb;
private static int nextSerialNum = 0;
private static ThreadLocal<Integer> threadLocalId = new ThreadLocal() {
protected synchronized Object initialValue() {
@@ -109,6 +110,7 @@
private boolean init() throws MetaException {
rawStoreClassName = hiveConf.get("hive.metastore.rawstore.impl");
+ checkForDefaultDb = hiveConf.getBoolean("hive.metastore.checkForDefaultDb", true);
wh = new Warehouse(hiveConf);
createDefaultDB();
return true;
@@ -134,7 +136,7 @@
* @throws MetaException
*/
private void createDefaultDB() throws MetaException {
- if(HMSHandler.createDefaultDB) {
+ if(HMSHandler.createDefaultDB || !checkForDefaultDb) {
return;
}
try {
@@ -358,6 +360,11 @@
throws InvalidObjectException, AlreadyExistsException, MetaException {
this.incrementCounter("append_partition");
logStartFunction("append_partition", dbName, tableName);
+ if(LOG.isDebugEnabled()) {
+ for (String part : part_vals) {
+ LOG.debug(part);
+ }
+ }
Partition part = new Partition();
boolean success = false;
try {
@@ -367,19 +374,20 @@
part.setTableName(tableName);
part.setValues(part_vals);
- Partition old_part = this.get_partition(part.getDbName(), part.getTableName(), part.getValues());
- if( old_part != null) {
- throw new AlreadyExistsException("Partition already exists:" + part);
- }
-
Table tbl = getMS().getTable(part.getDbName(), part.getTableName());
if(tbl == null) {
throw new InvalidObjectException("Unable to add partition because table or database do not exist");
}
+
part.setSd(tbl.getSd());
Path partLocation = new Path(tbl.getSd().getLocation(), Warehouse.makePartName(tbl.getPartitionKeys(), part_vals));
part.getSd().setLocation(partLocation.toString());
+ Partition old_part = this.get_partition(part.getDbName(), part.getTableName(), part.getValues());
+ if( old_part != null) {
+ throw new AlreadyExistsException("Partition already exists:" + part);
+ }
+
success = getMS().addPartition(part);
if(success) {
success = getMS().commitTransaction();
@@ -454,8 +462,32 @@
TException {
this.incrementCounter("drop_partition");
logStartFunction("drop_partition", db_name, tbl_name);
- // TODO:pc drop the data as needed
- return getMS().dropPartition(db_name, tbl_name, part_vals);
+ LOG.info("Partition values:" + part_vals);
+ boolean success = false;
+ Path partPath = null;
+ try {
+ getMS().openTransaction();
+ Partition part = this.get_partition(db_name, tbl_name, part_vals);
+ if(part == null) {
+ throw new NoSuchObjectException("Partition doesn't exist. " + part_vals);
+ }
+ if(part.getSd() == null || part.getSd().getLocation() == null) {
+ throw new MetaException("Partition metadata is corrupted");
+ }
+ if(!getMS().dropPartition(db_name, tbl_name, part_vals)) {
+ throw new MetaException("Unable to drop partition");
+ }
+ success = getMS().commitTransaction();
+ partPath = new Path(part.getSd().getLocation());
+ } finally {
+ if(!success) {
+ getMS().rollbackTransaction();
+ } else if(deleteData && (partPath != null)) {
+ wh.deleteDir(partPath, true);
+ // ok even if the data is not deleted
+ }
+ }
+ return true;
}
public Partition get_partition(String db_name, String tbl_name, List<String> part_vals)
Modified: hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java (original)
+++ hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java Tue Oct 21 11:11:05 2008
@@ -142,12 +142,13 @@
if(!open) {
throw new MetaException("Could not connect to meta store using any of the URIs provided");
}
+ LOG.info("Connected to metastore.");
}
private void openStore(URI store) throws MetaException {
open = false;
transport = new TSocket(store.getHost(), store.getPort());
- ((TSocket)transport).setTimeout(2000);
+ ((TSocket)transport).setTimeout(20000);
TProtocol protocol = new TBinaryProtocol(transport);
client = new ThriftHiveMetastore.Client(protocol);
Modified: hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/IMetaStoreClient.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/IMetaStoreClient.java?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/IMetaStoreClient.java (original)
+++ hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/IMetaStoreClient.java Tue Oct 21 11:11:05 2008
@@ -108,4 +108,18 @@
public void alter_table(String defaultDatabaseName, String tblName, Table table) throws InvalidOperationException, MetaException, TException;
public boolean createDatabase(String name, String location_uri) throws AlreadyExistsException, MetaException, TException;
public boolean dropDatabase(String name) throws MetaException, TException;
+
+ /**
+ * @param db_name
+ * @param tbl_name
+ * @param part_vals
+ * @param deleteData delete the underlying data or just delete the table in metadata
+ * @return
+ * @throws NoSuchObjectException
+ * @throws MetaException
+ * @throws TException
+ * @see org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore.Iface#drop_partition(java.lang.String, java.lang.String, java.util.List)
+ */
+ public boolean dropPartition(String db_name, String tbl_name, List<String> part_vals, boolean deleteData)
+ throws NoSuchObjectException, MetaException, TException;
}
\ No newline at end of file
Modified: hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreClient.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreClient.java?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreClient.java (original)
+++ hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreClient.java Tue Oct 21 11:11:05 2008
@@ -439,4 +439,9 @@
return new ArrayList<String>();
}
+ public boolean dropPartition(String db_name, String tbl_name, List<String> part_vals, boolean deleteData)
+ throws NoSuchObjectException, MetaException, TException {
+ return false;
+ }
+
}
Modified: hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java?rev=706704&r1=706703&r2=706704&view=diff
==============================================================================
--- hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java (original)
+++ hadoop/core/trunk/src/contrib/hive/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java Tue Oct 21 11:11:05 2008
@@ -102,7 +102,7 @@
tTable.getPartitionKeys().add(part);
}
// not sure why these are needed
- serdeInfo.setSerializationLib(MetadataTypedColumnsetSerDe.shortName());
+ serdeInfo.setSerializationLib(MetadataTypedColumnsetSerDe.class.getName());
sd.setNumBuckets(-1);
return tTable;
}
@@ -266,14 +266,22 @@
oldName = oldName.replace("com.facebook.thrift.hive.MetadataTypedColumnsetSerDe",org.apache.hadoop.hive.serde2.MetadataTypedColumnsetSerDe.class.getName());
// columnset serde
- oldName = oldName.replace("com.facebook.thrift.hive.columnsetSerDe",org.apache.hadoop.hive.serde2.MetadataTypedColumnsetSerDe.class.getName());
+ oldName = oldName.replace("com.facebook.thrift.hive.columnsetSerDe",org.apache.hadoop.hive.serde.thrift.columnsetSerDe.class.getName());
oldName = oldName.replace("org.apache.hadoop.hive.serde.simple_meta.MetadataTypedColumnsetSerDe",
- org.apache.hadoop.hive.serde2.MetadataTypedColumnsetSerDe.class.getName());
-
+ org.apache.hadoop.hive.serde2.MetadataTypedColumnsetSerDe.class.getName());
+ oldName = oldName.replace("com.facebook.thrift.hive.MetadataTypedColumnsetSerDe", org.apache.hadoop.hive.serde2.MetadataTypedColumnsetSerDe.class.getName());
// thrift serde
- oldName = oldName.replace("com.facebook.thrift.hive.ThriftHiveSerDe",org.apache.hadoop.hive.serde2.ThriftDeserializer.class.getName());
- oldName = oldName.replace("org.apache.hadoop.hive.serde.thrift.ThriftSerDe",
- org.apache.hadoop.hive.serde2.ThriftDeserializer.class.getName());
+ oldName = oldName.replace("com.facebook.thrift.hive.ThriftHiveSerDe", org.apache.hadoop.hive.serde2.ThriftDeserializer.class.getName());
+ oldName = oldName.replace("org.apache.hadoop.hive.serde.thrift.ThriftSerDe", org.apache.hadoop.hive.serde2.ThriftDeserializer.class.getName());
+
+ // replace any old short names in filebased metadata
+ if(oldName.equals("columnset"))
+ oldName = org.apache.hadoop.hive.serde.thrift.columnsetSerDe.class.getName();
+ if(oldName.equals("simple_meta"))
+ oldName = org.apache.hadoop.hive.serde2.MetadataTypedColumnsetSerDe.class.getName();
+ if(oldName.equals("thrift"))
+ oldName = org.apache.hadoop.hive.serde2.ThriftDeserializer.class.getName();
+
p.setProperty(key,oldName);
}
return p;
@@ -328,6 +336,8 @@
}
// needed for MetadataTypedColumnSetSerDe
setSerdeParam(t.getSd().getSerdeInfo(), schema, org.apache.hadoop.hive.metastore.api.Constants.META_TABLE_COLUMNS);
+ // needed for DynamicSerDe
+ setSerdeParam(t.getSd().getSerdeInfo(), schema, org.apache.hadoop.hive.serde.Constants.SERIALIZATION_DDL);
String colstr = schema.getProperty(org.apache.hadoop.hive.metastore.api.Constants.META_TABLE_COLUMNS);
List<FieldSchema> fields = new ArrayList<FieldSchema>();
@@ -350,6 +360,8 @@
}
t.getSd().setCols(fields);
+ t.setOwner(schema.getProperty("creator"));
+
// remove all the used up parameters to find out the remaining parameters
schema.remove(Constants.META_TABLE_NAME);
schema.remove(Constants.META_TABLE_LOCATION);
@@ -373,13 +385,70 @@
return t;
}
- private static void setSerdeParam(SerDeInfo sdi, Properties schema, String param) {
+ public static void setSerdeParam(SerDeInfo sdi, Properties schema, String param) {
String val = schema.getProperty(param);
if(org.apache.commons.lang.StringUtils.isNotBlank(val)) {
sdi.getParameters().put(param, val);
}
}
+ static HashMap<String, String> typeToThriftTypeMap;
+ static {
+ typeToThriftTypeMap = new HashMap<String, String>();
+ typeToThriftTypeMap.put(org.apache.hadoop.hive.serde.Constants.TINYINT_TYPE_NAME, "byte");
+ typeToThriftTypeMap.put(org.apache.hadoop.hive.serde.Constants.INT_TYPE_NAME, "i32");
+ typeToThriftTypeMap.put(org.apache.hadoop.hive.serde.Constants.BIGINT_TYPE_NAME, "i64");
+ typeToThriftTypeMap.put(org.apache.hadoop.hive.serde.Constants.DOUBLE_TYPE_NAME, "double");
+ typeToThriftTypeMap.put(org.apache.hadoop.hive.serde.Constants.FLOAT_TYPE_NAME, "float");
+ typeToThriftTypeMap.put(org.apache.hadoop.hive.serde.Constants.LIST_TYPE_NAME, "list");
+ typeToThriftTypeMap.put(org.apache.hadoop.hive.serde.Constants.MAP_TYPE_NAME, "map");
+ typeToThriftTypeMap.put(org.apache.hadoop.hive.serde.Constants.STRING_TYPE_NAME, "string");
+ // These 3 types are not supported yet.
+ // We should define a complex type date in thrift that contains a single int member, and DynamicSerDe
+ // should convert it to date type at runtime.
+ typeToThriftTypeMap.put(org.apache.hadoop.hive.serde.Constants.DATE_TYPE_NAME, "date");
+ typeToThriftTypeMap.put(org.apache.hadoop.hive.serde.Constants.DATETIME_TYPE_NAME, "datetime");
+ typeToThriftTypeMap.put(org.apache.hadoop.hive.serde.Constants.TIMESTAMP_TYPE_NAME, "timestamp");
+ }
+ /** Convert type to ThriftType. We do that by tokenizing the type and convert each token.
+ */
+ public static String typeToThriftType(String type) {
+ StringBuilder thriftType = new StringBuilder();
+ int last = 0;
+ boolean lastAlphaDigit = Character.isLetterOrDigit(type.charAt(last));
+ for(int i=1; i<=type.length(); i++) {
+ if (i == type.length() || Character.isLetterOrDigit(type.charAt(i)) != lastAlphaDigit) {
+ String token = type.substring(last, i);
+ last = i;
+ String thriftToken = typeToThriftTypeMap.get(token);
+ thriftType.append(thriftToken == null? token : thriftToken);
+ lastAlphaDigit = !lastAlphaDigit;
+ }
+ }
+ return thriftType.toString();
+ }
+ /** Convert FieldSchemas to Thrift DDL.
+ */
+ public static String getDDLFromFieldSchema(String structName, List<FieldSchema> fieldSchemas) {
+ StringBuilder ddl = new StringBuilder();
+ ddl.append("struct ");
+ ddl.append(structName);
+ ddl.append(" { ");
+ boolean first = true;
+ for (FieldSchema col: fieldSchemas) {
+ if (first) {
+ first = false;
+ } else {
+ ddl.append(", ");
+ }
+ ddl.append(typeToThriftType(col.getType()));
+ ddl.append(' ');
+ ddl.append(col.getName());
+ }
+ ddl.append("}");
+ LOG.warn("DDL: " + ddl);
+ return ddl.toString();
+ }
public static Properties getSchema(org.apache.hadoop.hive.metastore.api.Table tbl) {
Properties schema = new Properties();
String inputFormat = tbl.getSd().getInputFormat();
@@ -404,7 +473,7 @@
if(tbl.getSd().getSerdeInfo().getSerializationLib() != null) {
schema.setProperty(org.apache.hadoop.hive.serde.Constants.SERIALIZATION_LIB, tbl.getSd().getSerdeInfo().getSerializationLib());
}
- StringBuffer buf = new StringBuffer();
+ StringBuilder buf = new StringBuilder();
boolean first = true;
for (FieldSchema col: tbl.getSd().getCols()) {
if (!first) {
@@ -415,6 +484,8 @@
}
String cols = buf.toString();
schema.setProperty(org.apache.hadoop.hive.metastore.api.Constants.META_TABLE_COLUMNS, cols);
+ schema.setProperty(org.apache.hadoop.hive.serde.Constants.SERIALIZATION_DDL,
+ getDDLFromFieldSchema(tbl.getTableName(), tbl.getSd().getCols()));
String partString = "";
String partStringSep = "";
@@ -429,10 +500,6 @@
schema.setProperty(org.apache.hadoop.hive.metastore.api.Constants.META_TABLE_PARTITION_COLUMNS, partString);
}
- //TODO:pc field_to_dimension doesn't seem to be used anywhere so skipping for now
- schema.setProperty(org.apache.hadoop.hive.metastore.api.Constants.BUCKET_FIELD_NAME, "");
- schema.setProperty(org.apache.hadoop.hive.metastore.api.Constants.FIELD_TO_DIMENSION, "");
-
for(Entry<String, String> e: tbl.getParameters().entrySet()) {
schema.setProperty(e.getKey(), e.getValue());
}