You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by jv...@apache.org on 2010/07/30 08:40:11 UTC

svn commit: r980659 [1/34] - in /hadoop/hive/trunk: ./ common/src/java/org/apache/hadoop/hive/common/ contrib/src/test/results/clientpositive/ metastore/if/ metastore/src/gen-cpp/ metastore/src/gen-javabean/org/apache/hadoop/hive/metastore/api/ metasto...

Author: jvs
Date: Fri Jul 30 06:40:04 2010
New Revision: 980659

URL: http://svn.apache.org/viewvc?rev=980659&view=rev
Log:
HIVE-417. Implement Indexing in Hive
(He Yongqiang via jvs)


Added:
    hadoop/hive/trunk/metastore/src/model/org/apache/hadoop/hive/metastore/model/MIndex.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/AbstractIndexHandler.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/HiveIndex.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/HiveIndexHandler.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/compact/
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/compact/CompactIndexHandler.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/compact/HiveCompactIndexInputFormat.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/compact/HiveCompactIndexResult.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/compact/IndexMetadataChangeTask.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/compact/IndexMetadataChangeWork.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/io/HiveContextAwareRecordReader.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/io/IOContext.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/VirtualColumn.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/CreateIndexDesc.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/DropIndexDesc.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFCollectSet.java
    hadoop/hive/trunk/ql/src/test/queries/clientnegative/bad_indextype.q
    hadoop/hive/trunk/ql/src/test/queries/clientpositive/index_compact.q
    hadoop/hive/trunk/ql/src/test/queries/clientpositive/index_compact_1.q
    hadoop/hive/trunk/ql/src/test/queries/clientpositive/index_compact_2.q
    hadoop/hive/trunk/ql/src/test/queries/clientpositive/index_compact_3.q
    hadoop/hive/trunk/ql/src/test/queries/clientpositive/index_creation.q
    hadoop/hive/trunk/ql/src/test/queries/clientpositive/virtual_column.q
    hadoop/hive/trunk/ql/src/test/results/clientnegative/bad_indextype.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/index_compact.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/index_compact_1.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/index_compact_2.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/index_compact_3.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/index_creation.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/virtual_column.q.out
Modified:
    hadoop/hive/trunk/CHANGES.txt
    hadoop/hive/trunk/common/src/java/org/apache/hadoop/hive/common/FileUtils.java
    hadoop/hive/trunk/contrib/src/test/results/clientpositive/udaf_example_group_concat.q.out
    hadoop/hive/trunk/metastore/if/hive_metastore.thrift
    hadoop/hive/trunk/metastore/src/gen-cpp/ThriftHiveMetastore.cpp
    hadoop/hive/trunk/metastore/src/gen-cpp/ThriftHiveMetastore.h
    hadoop/hive/trunk/metastore/src/gen-cpp/ThriftHiveMetastore_server.skeleton.cpp
    hadoop/hive/trunk/metastore/src/gen-cpp/hive_metastore_types.cpp
    hadoop/hive/trunk/metastore/src/gen-cpp/hive_metastore_types.h
    hadoop/hive/trunk/metastore/src/gen-javabean/org/apache/hadoop/hive/metastore/api/Index.java
    hadoop/hive/trunk/metastore/src/gen-javabean/org/apache/hadoop/hive/metastore/api/Schema.java
    hadoop/hive/trunk/metastore/src/gen-javabean/org/apache/hadoop/hive/metastore/api/ThriftHiveMetastore.java
    hadoop/hive/trunk/metastore/src/gen-php/ThriftHiveMetastore.php
    hadoop/hive/trunk/metastore/src/gen-php/hive_metastore_types.php
    hadoop/hive/trunk/metastore/src/gen-py/hive_metastore/ThriftHiveMetastore-remote
    hadoop/hive/trunk/metastore/src/gen-py/hive_metastore/ThriftHiveMetastore.py
    hadoop/hive/trunk/metastore/src/gen-py/hive_metastore/ttypes.py
    hadoop/hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java
    hadoop/hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java
    hadoop/hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/IMetaStoreClient.java
    hadoop/hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java
    hadoop/hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/ObjectStore.java
    hadoop/hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/RawStore.java
    hadoop/hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/TableType.java
    hadoop/hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/Warehouse.java
    hadoop/hive/trunk/metastore/src/model/package.jdo
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/DriverContext.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnInfo.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/ExecMapper.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/ExecMapperContext.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/FunctionRegistry.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/MapOperator.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/TaskFactory.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/history/HiveHistory.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/io/BucketizedHiveInputFormat.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/io/BucketizedHiveRecordReader.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/io/CombineHiveRecordReader.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/io/HiveInputFormat.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/io/HiveRecordReader.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/io/RCFile.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/HiveUtils.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPrunerProcFactory.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMRFileSink1.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/MapJoinProcessor.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ReduceSinkDeDuplication.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/OpProcFactory.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ppr/ExprProcFactory.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/BaseSemanticAnalyzer.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/TypeCheckProcFactory.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/DDLWork.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/ExprNodeColumnDesc.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/PartitionDesc.java
    hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/TableScanDesc.java
    hadoop/hive/trunk/ql/src/test/org/apache/hadoop/hive/ql/hooks/PostExecutePrinter.java
    hadoop/hive/trunk/ql/src/test/queries/clientpositive/udf_index.q
    hadoop/hive/trunk/ql/src/test/results/clientpositive/bucketmapjoin1.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/bucketmapjoin2.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/bucketmapjoin3.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/bucketmapjoin4.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/bucketmapjoin5.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/bucketmapjoin_negative.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/bucketmapjoin_negative2.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/cluster.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/filter_join_breaktask.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/input23.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/input39.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join1.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join14.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join15.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join17.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join2.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join20.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join21.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join22.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join23.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join25.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join26.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join27.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join3.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join32.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join33.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join36.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join37.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join38.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join40.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join9.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join_hive_626.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join_map_ppr.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join_rc.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join_reorder.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join_reorder2.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join_reorder3.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/join_thrift.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/lateral_view.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/lineage1.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/louter_join_ppr.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/no_hooks.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/outer_join_ppr.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/ppd_clusterby.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/ppd_gby.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/ppd_gby2.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/ppd_outer_join1.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/ppd_outer_join2.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/ppd_outer_join3.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/ppd_outer_join4.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/ppd_udf_case.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/regex_col.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/router_join_ppr.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/sample8.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/semijoin.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/show_functions.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/skewjoin.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/smb_mapjoin_1.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/smb_mapjoin_2.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/smb_mapjoin_3.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/smb_mapjoin_4.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/smb_mapjoin_5.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/smb_mapjoin_6.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/smb_mapjoin_7.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/udf_index.q.out
    hadoop/hive/trunk/ql/src/test/results/clientpositive/union22.q.out
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/case_sensitivity.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/cast1.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/groupby1.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/groupby2.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/groupby3.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/groupby4.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/groupby5.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/groupby6.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input1.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input2.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input20.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input3.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input4.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input5.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input6.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input7.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input8.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input9.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input_part1.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input_testsequencefile.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input_testxpath.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/input_testxpath2.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join1.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join2.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join3.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join4.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join5.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join6.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join7.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/join8.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/sample1.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/sample2.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/sample3.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/sample4.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/sample5.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/sample6.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/sample7.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/subq.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/udf1.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/udf4.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/udf6.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/udf_case.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/udf_when.q.xml
    hadoop/hive/trunk/ql/src/test/results/compiler/plan/union.q.xml
    hadoop/hive/trunk/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/PrimitiveObjectInspectorUtils.java

Modified: hadoop/hive/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/CHANGES.txt?rev=980659&r1=980658&r2=980659&view=diff
==============================================================================
--- hadoop/hive/trunk/CHANGES.txt (original)
+++ hadoop/hive/trunk/CHANGES.txt Fri Jul 30 06:40:04 2010
@@ -27,6 +27,9 @@ Trunk -  Unreleased
     getColumns and HiveResultSet.get* methods based on column name.
     (Bennie Schut via jvs)
 
+    HIVE-417. Implement Indexing in Hive
+    (He Yongqiang via jvs)
+
   IMPROVEMENTS
 
     HIVE-1394. Do not update transient_lastDdlTime if the partition is modified by a housekeeping
@@ -90,7 +93,7 @@ Trunk -  Unreleased
 
     HIVE-1425. hive.task.progress should be added to conf/hive-default.xml
     (John Sichi via Ning Zhang)
-    
+
     HIVE-1492. FileSinkOperator should remove duplicated files from the same task based on file sizes
     (Ning Zhang via He Yongqiang)
 

Modified: hadoop/hive/trunk/common/src/java/org/apache/hadoop/hive/common/FileUtils.java
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/common/src/java/org/apache/hadoop/hive/common/FileUtils.java?rev=980659&r1=980658&r2=980659&view=diff
==============================================================================
--- hadoop/hive/trunk/common/src/java/org/apache/hadoop/hive/common/FileUtils.java (original)
+++ hadoop/hive/trunk/common/src/java/org/apache/hadoop/hive/common/FileUtils.java Fri Jul 30 06:40:04 2010
@@ -71,6 +71,9 @@ public final class FileUtils {
       // no scheme - use default file system uri
       scheme = fsUri.getScheme();
       authority = fsUri.getAuthority();
+      if(authority == null) {
+        authority = "";
+      }
     } else {
       if(authority == null) {
         // no authority - use default one if it applies

Modified: hadoop/hive/trunk/contrib/src/test/results/clientpositive/udaf_example_group_concat.q.out
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/contrib/src/test/results/clientpositive/udaf_example_group_concat.q.out?rev=980659&r1=980658&r2=980659&view=diff
==============================================================================
--- hadoop/hive/trunk/contrib/src/test/results/clientpositive/udaf_example_group_concat.q.out (original)
+++ hadoop/hive/trunk/contrib/src/test/results/clientpositive/udaf_example_group_concat.q.out Fri Jul 30 06:40:04 2010
@@ -28,11 +28,11 @@ STAGE PLANS:
             alias: src
             Select Operator
               expressions:
-                    expr: key
-                    type: string
                     expr: value
                     type: string
-              outputColumnNames: key, value
+                    expr: key
+                    type: string
+              outputColumnNames: value, key
               Group By Operator
                 aggregations:
                       expr: example_group_concat('(', key, ':', value, ')')
@@ -88,13 +88,13 @@ FROM src
 GROUP BY substr(value,5,1)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src
-PREHOOK: Output: file:/data/users/heyongqiang/hive-trunk-commit/build/ql/tmp/409446441/10000
+PREHOOK: Output: file:/var/folders/6g/6grtCwPMEf4sqHUPpy6xQG9ByHg/-Tmp-/heyongqiang/hive_2010-07-27_17-42-26_307_9047118768523423331/10000
 POSTHOOK: query: SELECT substr(value,5,1), example_group_concat("(", key, ":", value, ")")
 FROM src
 GROUP BY substr(value,5,1)
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
-POSTHOOK: Output: file:/data/users/heyongqiang/hive-trunk-commit/build/ql/tmp/409446441/10000
+POSTHOOK: Output: file:/var/folders/6g/6grtCwPMEf4sqHUPpy6xQG9ByHg/-Tmp-/heyongqiang/hive_2010-07-27_17-42-26_307_9047118768523423331/10000
 0	(0:val_0)(0:val_0)(0:val_0)
 1	(100:val_100)(100:val_100)(103:val_103)(103:val_103)(104:val_104)(104:val_104)(105:val_105)(10:val_10)(111:val_111)(113:val_113)(113:val_113)(114:val_114)(116:val_116)(118:val_118)(118:val_118)(119:val_119)(119:val_119)(119:val_119)(11:val_11)(120:val_120)(120:val_120)(125:val_125)(125:val_125)(126:val_126)(128:val_128)(128:val_128)(128:val_128)(129:val_129)(129:val_129)(12:val_12)(12:val_12)(131:val_131)(133:val_133)(134:val_134)(134:val_134)(136:val_136)(137:val_137)(137:val_137)(138:val_138)(138:val_138)(138:val_138)(138:val_138)(143:val_143)(145:val_145)(146:val_146)(146:val_146)(149:val_149)(149:val_149)(150:val_150)(152:val_152)(152:val_152)(153:val_153)(155:val_155)(156:val_156)(157:val_157)(158:val_158)(15:val_15)(15:val_15)(160:val_160)(162:val_162)(163:val_163)(164:val_164)(164:val_164)(165:val_165)(165:val_165)(166:val_166)(167:val_167)(167:val_167)(167:val_167)(168:val_168)(169:val_169)(169:val_169)(169:val_169)(169:val_169)(170:val_170)(172:val_172)(172:val_17
 2)(174:val_174)(174:val_174)(175:val_175)(175:val_175)(176:val_176)(176:val_176)(177:val_177)(178:val_178)(179:val_179)(179:val_179)(17:val_17)(180:val_180)(181:val_181)(183:val_183)(186:val_186)(187:val_187)(187:val_187)(187:val_187)(189:val_189)(18:val_18)(18:val_18)(190:val_190)(191:val_191)(191:val_191)(192:val_192)(193:val_193)(193:val_193)(193:val_193)(194:val_194)(195:val_195)(195:val_195)(196:val_196)(197:val_197)(197:val_197)(199:val_199)(199:val_199)(199:val_199)(19:val_19)
 2	(200:val_200)(200:val_200)(201:val_201)(202:val_202)(203:val_203)(203:val_203)(205:val_205)(205:val_205)(207:val_207)(207:val_207)(208:val_208)(208:val_208)(208:val_208)(209:val_209)(209:val_209)(20:val_20)(213:val_213)(213:val_213)(214:val_214)(216:val_216)(216:val_216)(217:val_217)(217:val_217)(218:val_218)(219:val_219)(219:val_219)(221:val_221)(221:val_221)(222:val_222)(223:val_223)(223:val_223)(224:val_224)(224:val_224)(226:val_226)(228:val_228)(229:val_229)(229:val_229)(230:val_230)(230:val_230)(230:val_230)(230:val_230)(230:val_230)(233:val_233)(233:val_233)(235:val_235)(237:val_237)(237:val_237)(238:val_238)(238:val_238)(239:val_239)(239:val_239)(241:val_241)(242:val_242)(242:val_242)(244:val_244)(247:val_247)(248:val_248)(249:val_249)(24:val_24)(24:val_24)(252:val_252)(255:val_255)(255:val_255)(256:val_256)(256:val_256)(257:val_257)(258:val_258)(260:val_260)(262:val_262)(263:val_263)(265:val_265)(265:val_265)(266:val_266)(26:val_26)(26:val_26)(272:val_272)(272:val_
 272)(273:val_273)(273:val_273)(273:val_273)(274:val_274)(275:val_275)(277:val_277)(277:val_277)(277:val_277)(277:val_277)(278:val_278)(278:val_278)(27:val_27)(280:val_280)(280:val_280)(281:val_281)(281:val_281)(282:val_282)(282:val_282)(283:val_283)(284:val_284)(285:val_285)(286:val_286)(287:val_287)(288:val_288)(288:val_288)(289:val_289)(28:val_28)(291:val_291)(292:val_292)(296:val_296)(298:val_298)(298:val_298)(298:val_298)(2:val_2)

Modified: hadoop/hive/trunk/metastore/if/hive_metastore.thrift
URL: http://svn.apache.org/viewvc/hadoop/hive/trunk/metastore/if/hive_metastore.thrift?rev=980659&r1=980658&r2=980659&view=diff
==============================================================================
--- hadoop/hive/trunk/metastore/if/hive_metastore.thrift (original)
+++ hadoop/hive/trunk/metastore/if/hive_metastore.thrift Fri Jul 30 06:40:04 2010
@@ -88,15 +88,17 @@ struct Partition {
   7: map<string, string> parameters
 }
 
-// index on a hive table is also another table whose columns are the subset of the base table columns along with the offset
-// this will automatically generate table (table_name_index_name)
 struct Index {
   1: string       indexName, // unique with in the whole database namespace
-  2: i32          indexType, // reserved
-  3: string       tableName,
-  4: string       dbName,
-  5: list<string> colNames,  // for now columns will be sorted in the ascending order
-  6: string       partName   // partition name
+  2: string       indexHandlerClass, // reserved
+  3: string       dbName,
+  4: string       origTableName,
+  5: i32          createTime,
+  6: i32          lastAccessTime,
+  7: string       indexTableName,
+  8: StorageDescriptor   sd,
+  9: map<string, string> parameters,
+  10: bool         deferredRebuild
 }
 
 // schema of the table/query results etc.
@@ -243,7 +245,20 @@ service ThriftHiveMetastore extends fb30
   // converts a partition name into a partition specification (a mapping from
   // the partition cols to the values)
   map<string, string> partition_name_to_spec(1: string part_name)
-                          throws(1: MetaException o1)                     
+                          throws(1: MetaException o1)
+  
+  //index
+  Index add_index(1:Index new_index, 2: Table index_table)
+                       throws(1:InvalidObjectException o1, 2:AlreadyExistsException o2, 3:MetaException o3)
+  bool drop_index_by_name(1:string db_name, 2:string tbl_name, 3:string index_name, 4:bool deleteData)
+                       throws(1:NoSuchObjectException o1, 2:MetaException o2) 
+  Index get_index_by_name(1:string db_name 2:string tbl_name, 3:string index_name)
+                       throws(1:MetaException o1, 2:NoSuchObjectException o2)
+
+  list<Index> get_indexes(1:string db_name, 2:string tbl_name, 3:i16 max_indexes=-1)
+                       throws(1:NoSuchObjectException o1, 2:MetaException o2)
+  list<string> get_index_names(1:string db_name, 2:string tbl_name, 3:i16 max_indexes=-1)
+                       throws(1:MetaException o2)
 }
 
 // For storing info about archived partitions in parameters