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());
     }