HIVE-12061 : add file type support to file metadata by expr call (Sergey 
Shelukhin, reviewed by Alan Gates)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/6d4aa068
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/6d4aa068
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/6d4aa068

Branch: refs/heads/master
Commit: 6d4aa068684571ed885b9b5fa004eab8a77fc4c8
Parents: d6f9a8e
Author: Sergey Shelukhin <ser...@apache.org>
Authored: Thu Oct 22 17:03:15 2015 -0700
Committer: Sergey Shelukhin <ser...@apache.org>
Committed: Fri Oct 23 13:30:49 2015 -0700

----------------------------------------------------------------------
 metastore/if/hive_metastore.thrift              |    8 +-
 .../gen/thrift/gen-cpp/ThriftHiveMetastore.cpp  | 1744 +++++++++---------
 .../gen/thrift/gen-cpp/ThriftHiveMetastore.h    |    8 +-
 .../gen/thrift/gen-cpp/hive_metastore_types.cpp |  406 ++--
 .../gen/thrift/gen-cpp/hive_metastore_types.h   |   24 +-
 .../hive/metastore/api/AbortTxnRequest.java     |    2 +-
 .../metastore/api/AddDynamicPartitions.java     |    2 +-
 .../metastore/api/AddPartitionsRequest.java     |    2 +-
 .../hive/metastore/api/AddPartitionsResult.java |    2 +-
 .../hadoop/hive/metastore/api/AggrStats.java    |    2 +-
 .../metastore/api/AlreadyExistsException.java   |    2 +-
 .../metastore/api/BinaryColumnStatsData.java    |    2 +-
 .../metastore/api/BooleanColumnStatsData.java   |    2 +-
 .../hive/metastore/api/CheckLockRequest.java    |    2 +-
 .../metastore/api/ClearFileMetadataRequest.java |    2 +-
 .../metastore/api/ClearFileMetadataResult.java  |    2 +-
 .../hive/metastore/api/ColumnStatistics.java    |    2 +-
 .../metastore/api/ColumnStatisticsDesc.java     |    2 +-
 .../hive/metastore/api/ColumnStatisticsObj.java |    2 +-
 .../hive/metastore/api/CommitTxnRequest.java    |    2 +-
 .../hive/metastore/api/CompactionRequest.java   |    2 +-
 .../api/ConfigValSecurityException.java         |    2 +-
 .../api/CurrentNotificationEventId.java         |    2 +-
 .../hadoop/hive/metastore/api/Database.java     |    2 +-
 .../apache/hadoop/hive/metastore/api/Date.java  |    2 +-
 .../hive/metastore/api/DateColumnStatsData.java |    2 +-
 .../hadoop/hive/metastore/api/Decimal.java      |    2 +-
 .../metastore/api/DecimalColumnStatsData.java   |    2 +-
 .../metastore/api/DoubleColumnStatsData.java    |    2 +-
 .../hive/metastore/api/DropPartitionsExpr.java  |    2 +-
 .../metastore/api/DropPartitionsRequest.java    |    2 +-
 .../metastore/api/DropPartitionsResult.java     |    2 +-
 .../hive/metastore/api/EnvironmentContext.java  |    2 +-
 .../hadoop/hive/metastore/api/FieldSchema.java  |    2 +-
 .../metastore/api/FileMetadataExprType.java     |   42 +
 .../hive/metastore/api/FireEventRequest.java    |    2 +-
 .../hive/metastore/api/FireEventResponse.java   |    2 +-
 .../hadoop/hive/metastore/api/Function.java     |    2 +-
 .../metastore/api/GetAllFunctionsResponse.java  |    2 +-
 .../api/GetFileMetadataByExprRequest.java       |  128 +-
 .../api/GetFileMetadataByExprResult.java        |    2 +-
 .../metastore/api/GetFileMetadataRequest.java   |    2 +-
 .../metastore/api/GetFileMetadataResult.java    |    2 +-
 .../metastore/api/GetOpenTxnsInfoResponse.java  |    2 +-
 .../hive/metastore/api/GetOpenTxnsResponse.java |    2 +-
 .../api/GetPrincipalsInRoleRequest.java         |    2 +-
 .../api/GetPrincipalsInRoleResponse.java        |    2 +-
 .../api/GetRoleGrantsForPrincipalRequest.java   |    2 +-
 .../api/GetRoleGrantsForPrincipalResponse.java  |    2 +-
 .../api/GrantRevokePrivilegeRequest.java        |    2 +-
 .../api/GrantRevokePrivilegeResponse.java       |    2 +-
 .../metastore/api/GrantRevokeRoleRequest.java   |    2 +-
 .../metastore/api/GrantRevokeRoleResponse.java  |    2 +-
 .../hive/metastore/api/HeartbeatRequest.java    |    2 +-
 .../metastore/api/HeartbeatTxnRangeRequest.java |    2 +-
 .../api/HeartbeatTxnRangeResponse.java          |    2 +-
 .../hive/metastore/api/HiveObjectPrivilege.java |    2 +-
 .../hive/metastore/api/HiveObjectRef.java       |    2 +-
 .../apache/hadoop/hive/metastore/api/Index.java |    2 +-
 .../api/IndexAlreadyExistsException.java        |    2 +-
 .../metastore/api/InsertEventRequestData.java   |    2 +-
 .../metastore/api/InvalidInputException.java    |    2 +-
 .../metastore/api/InvalidObjectException.java   |    2 +-
 .../api/InvalidOperationException.java          |    2 +-
 .../api/InvalidPartitionException.java          |    2 +-
 .../hive/metastore/api/LockComponent.java       |    2 +-
 .../hadoop/hive/metastore/api/LockRequest.java  |    2 +-
 .../hadoop/hive/metastore/api/LockResponse.java |    2 +-
 .../hive/metastore/api/LongColumnStatsData.java |    2 +-
 .../hive/metastore/api/MetaException.java       |    2 +-
 .../hive/metastore/api/MetadataPpdResult.java   |    2 +-
 .../hive/metastore/api/NoSuchLockException.java |    2 +-
 .../metastore/api/NoSuchObjectException.java    |    2 +-
 .../hive/metastore/api/NoSuchTxnException.java  |    2 +-
 .../hive/metastore/api/NotificationEvent.java   |    2 +-
 .../metastore/api/NotificationEventRequest.java |    2 +-
 .../api/NotificationEventResponse.java          |    2 +-
 .../hive/metastore/api/OpenTxnRequest.java      |    2 +-
 .../hive/metastore/api/OpenTxnsResponse.java    |    2 +-
 .../apache/hadoop/hive/metastore/api/Order.java |    2 +-
 .../hadoop/hive/metastore/api/Partition.java    |    2 +-
 .../api/PartitionListComposingSpec.java         |    2 +-
 .../hive/metastore/api/PartitionSpec.java       |    2 +-
 .../api/PartitionSpecWithSharedSD.java          |    2 +-
 .../hive/metastore/api/PartitionWithoutSD.java  |    2 +-
 .../metastore/api/PartitionsByExprRequest.java  |    2 +-
 .../metastore/api/PartitionsByExprResult.java   |    2 +-
 .../metastore/api/PartitionsStatsRequest.java   |    2 +-
 .../metastore/api/PartitionsStatsResult.java    |    2 +-
 .../metastore/api/PrincipalPrivilegeSet.java    |    2 +-
 .../hadoop/hive/metastore/api/PrivilegeBag.java |    2 +-
 .../hive/metastore/api/PrivilegeGrantInfo.java  |    2 +-
 .../metastore/api/PutFileMetadataRequest.java   |    2 +-
 .../metastore/api/PutFileMetadataResult.java    |    2 +-
 .../hadoop/hive/metastore/api/ResourceUri.java  |    2 +-
 .../apache/hadoop/hive/metastore/api/Role.java  |    2 +-
 .../hive/metastore/api/RolePrincipalGrant.java  |    2 +-
 .../hadoop/hive/metastore/api/Schema.java       |    2 +-
 .../hadoop/hive/metastore/api/SerDeInfo.java    |    2 +-
 .../api/SetPartitionsStatsRequest.java          |    2 +-
 .../hive/metastore/api/ShowCompactRequest.java  |    2 +-
 .../hive/metastore/api/ShowCompactResponse.java |    2 +-
 .../api/ShowCompactResponseElement.java         |    2 +-
 .../hive/metastore/api/ShowLocksRequest.java    |    2 +-
 .../hive/metastore/api/ShowLocksResponse.java   |    2 +-
 .../metastore/api/ShowLocksResponseElement.java |    2 +-
 .../hadoop/hive/metastore/api/SkewedInfo.java   |    2 +-
 .../hive/metastore/api/StorageDescriptor.java   |    2 +-
 .../metastore/api/StringColumnStatsData.java    |    2 +-
 .../apache/hadoop/hive/metastore/api/Table.java |    2 +-
 .../hive/metastore/api/TableStatsRequest.java   |    2 +-
 .../hive/metastore/api/TableStatsResult.java    |    2 +-
 .../hive/metastore/api/ThriftHiveMetastore.java |    2 +-
 .../hive/metastore/api/TxnAbortedException.java |    2 +-
 .../hadoop/hive/metastore/api/TxnInfo.java      |    2 +-
 .../hive/metastore/api/TxnOpenException.java    |    2 +-
 .../apache/hadoop/hive/metastore/api/Type.java  |    2 +-
 .../hive/metastore/api/UnknownDBException.java  |    2 +-
 .../api/UnknownPartitionException.java          |    2 +-
 .../metastore/api/UnknownTableException.java    |    2 +-
 .../hive/metastore/api/UnlockRequest.java       |    2 +-
 .../hadoop/hive/metastore/api/Version.java      |    2 +-
 .../src/gen/thrift/gen-php/metastore/Types.php  |   30 +
 .../gen/thrift/gen-py/hive_metastore/ttypes.py  |   26 +-
 .../gen/thrift/gen-rb/hive_metastore_types.rb   |   13 +-
 .../hive/metastore/FileMetadataHandler.java     |   30 +
 .../hadoop/hive/metastore/HiveMetaStore.java    |   15 +-
 .../hadoop/hive/metastore/ObjectStore.java      |    3 +-
 .../apache/hadoop/hive/metastore/RawStore.java  |    8 +-
 .../filemeta/OrcFileMetadataHandler.java        |   63 +
 .../hive/metastore/hbase/HBaseReadWrite.java    |    2 +-
 .../hadoop/hive/metastore/hbase/HBaseStore.java |   41 +-
 .../DummyRawStoreControlledCommit.java          |    3 +-
 .../DummyRawStoreForJdoConnection.java          |    3 +-
 .../hadoop/hive/ql/plan/api/Adjacency.java      |    2 +-
 .../apache/hadoop/hive/ql/plan/api/Graph.java   |    2 +-
 .../hadoop/hive/ql/plan/api/Operator.java       |    2 +-
 .../apache/hadoop/hive/ql/plan/api/Query.java   |    2 +-
 .../hadoop/hive/ql/plan/api/QueryPlan.java      |    2 +-
 .../apache/hadoop/hive/ql/plan/api/Stage.java   |    2 +-
 .../apache/hadoop/hive/ql/plan/api/Task.java    |    2 +-
 .../hadoop/hive/serde/test/InnerStruct.java     |    2 +-
 .../hadoop/hive/serde/test/ThriftTestObj.java   |    2 +-
 .../hadoop/hive/serde2/thrift/test/Complex.java |    2 +-
 .../hive/serde2/thrift/test/IntString.java      |    2 +-
 .../hive/serde2/thrift/test/MegaStruct.java     |    2 +-
 .../hive/serde2/thrift/test/MiniStruct.java     |    2 +-
 .../hive/serde2/thrift/test/SetIntString.java   |    2 +-
 .../hadoop/hive/service/HiveClusterStatus.java  |    2 +-
 .../hive/service/HiveServerException.java       |    2 +-
 .../apache/hadoop/hive/service/ThriftHive.java  |    2 +-
 .../service/cli/thrift/TArrayTypeEntry.java     |    2 +-
 .../hive/service/cli/thrift/TBinaryColumn.java  |    2 +-
 .../hive/service/cli/thrift/TBoolColumn.java    |    2 +-
 .../hive/service/cli/thrift/TBoolValue.java     |    2 +-
 .../hive/service/cli/thrift/TByteColumn.java    |    2 +-
 .../hive/service/cli/thrift/TByteValue.java     |    2 +-
 .../hive/service/cli/thrift/TCLIService.java    |    2 +-
 .../cli/thrift/TCancelDelegationTokenReq.java   |    2 +-
 .../cli/thrift/TCancelDelegationTokenResp.java  |    2 +-
 .../service/cli/thrift/TCancelOperationReq.java |    2 +-
 .../cli/thrift/TCancelOperationResp.java        |    2 +-
 .../service/cli/thrift/TCloseOperationReq.java  |    2 +-
 .../service/cli/thrift/TCloseOperationResp.java |    2 +-
 .../service/cli/thrift/TCloseSessionReq.java    |    2 +-
 .../service/cli/thrift/TCloseSessionResp.java   |    2 +-
 .../hive/service/cli/thrift/TColumnDesc.java    |    2 +-
 .../hive/service/cli/thrift/TDoubleColumn.java  |    2 +-
 .../hive/service/cli/thrift/TDoubleValue.java   |    2 +-
 .../cli/thrift/TExecuteStatementReq.java        |    2 +-
 .../cli/thrift/TExecuteStatementResp.java       |    2 +-
 .../service/cli/thrift/TFetchResultsReq.java    |    2 +-
 .../service/cli/thrift/TFetchResultsResp.java   |    2 +-
 .../service/cli/thrift/TGetCatalogsReq.java     |    2 +-
 .../service/cli/thrift/TGetCatalogsResp.java    |    2 +-
 .../hive/service/cli/thrift/TGetColumnsReq.java |    2 +-
 .../service/cli/thrift/TGetColumnsResp.java     |    2 +-
 .../cli/thrift/TGetDelegationTokenReq.java      |    2 +-
 .../cli/thrift/TGetDelegationTokenResp.java     |    2 +-
 .../service/cli/thrift/TGetFunctionsReq.java    |    2 +-
 .../service/cli/thrift/TGetFunctionsResp.java   |    2 +-
 .../hive/service/cli/thrift/TGetInfoReq.java    |    2 +-
 .../hive/service/cli/thrift/TGetInfoResp.java   |    2 +-
 .../cli/thrift/TGetOperationStatusReq.java      |    2 +-
 .../cli/thrift/TGetOperationStatusResp.java     |    2 +-
 .../cli/thrift/TGetResultSetMetadataReq.java    |    2 +-
 .../cli/thrift/TGetResultSetMetadataResp.java   |    2 +-
 .../hive/service/cli/thrift/TGetSchemasReq.java |    2 +-
 .../service/cli/thrift/TGetSchemasResp.java     |    2 +-
 .../service/cli/thrift/TGetTableTypesReq.java   |    2 +-
 .../service/cli/thrift/TGetTableTypesResp.java  |    2 +-
 .../hive/service/cli/thrift/TGetTablesReq.java  |    2 +-
 .../hive/service/cli/thrift/TGetTablesResp.java |    2 +-
 .../service/cli/thrift/TGetTypeInfoReq.java     |    2 +-
 .../service/cli/thrift/TGetTypeInfoResp.java    |    2 +-
 .../service/cli/thrift/THandleIdentifier.java   |    2 +-
 .../hive/service/cli/thrift/TI16Column.java     |    2 +-
 .../hive/service/cli/thrift/TI16Value.java      |    2 +-
 .../hive/service/cli/thrift/TI32Column.java     |    2 +-
 .../hive/service/cli/thrift/TI32Value.java      |    2 +-
 .../hive/service/cli/thrift/TI64Column.java     |    2 +-
 .../hive/service/cli/thrift/TI64Value.java      |    2 +-
 .../hive/service/cli/thrift/TMapTypeEntry.java  |    2 +-
 .../service/cli/thrift/TOpenSessionReq.java     |    2 +-
 .../service/cli/thrift/TOpenSessionResp.java    |    2 +-
 .../service/cli/thrift/TOperationHandle.java    |    2 +-
 .../service/cli/thrift/TPrimitiveTypeEntry.java |    2 +-
 .../cli/thrift/TRenewDelegationTokenReq.java    |    2 +-
 .../cli/thrift/TRenewDelegationTokenResp.java   |    2 +-
 .../apache/hive/service/cli/thrift/TRow.java    |    2 +-
 .../apache/hive/service/cli/thrift/TRowSet.java |    2 +-
 .../hive/service/cli/thrift/TSessionHandle.java |    2 +-
 .../apache/hive/service/cli/thrift/TStatus.java |    2 +-
 .../hive/service/cli/thrift/TStringColumn.java  |    2 +-
 .../hive/service/cli/thrift/TStringValue.java   |    2 +-
 .../service/cli/thrift/TStructTypeEntry.java    |    2 +-
 .../hive/service/cli/thrift/TTableSchema.java   |    2 +-
 .../hive/service/cli/thrift/TTypeDesc.java      |    2 +-
 .../service/cli/thrift/TTypeQualifiers.java     |    2 +-
 .../service/cli/thrift/TUnionTypeEntry.java     |    2 +-
 .../cli/thrift/TUserDefinedTypeEntry.java       |    2 +-
 221 files changed, 1695 insertions(+), 1306 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/6d4aa068/metastore/if/hive_metastore.thrift
----------------------------------------------------------------------
diff --git a/metastore/if/hive_metastore.thrift 
b/metastore/if/hive_metastore.thrift
index 751cebe..3e30f56 100755
--- a/metastore/if/hive_metastore.thrift
+++ b/metastore/if/hive_metastore.thrift
@@ -725,11 +725,17 @@ struct GetFileMetadataByExprResult {
   2: required bool isSupported
 }
 
+enum FileMetadataExprType {
+  ORC_SARG = 1
+}
+
+
 // Request type for get_file_metadata_by_expr
 struct GetFileMetadataByExprRequest {
   1: required list<i64> fileIds,
   2: required binary expr,
-  3: optional bool doGetFooters
+  3: optional bool doGetFooters,
+  4: optional FileMetadataExprType type
 }
 
 // Return type for get_file_metadata

Reply via email to