You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Elliot West (JIRA)" <ji...@apache.org> on 2015/07/11 07:58:04 UTC
[jira] [Updated] (HIVE-11230) IMetaStoreClient getPartition method
arguments incorrectly named
[ https://issues.apache.org/jira/browse/HIVE-11230?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Elliot West updated HIVE-11230:
-------------------------------
Attachment: HIVE-11230.1.patch
> IMetaStoreClient getPartition method arguments incorrectly named
> ----------------------------------------------------------------
>
> Key: HIVE-11230
> URL: https://issues.apache.org/jira/browse/HIVE-11230
> Project: Hive
> Issue Type: Bug
> Affects Versions: 2.0.0
> Reporter: Elliot West
> Assignee: Elliot West
> Priority: Minor
> Labels: metastore
> Attachments: HIVE-11230.1.patch
>
>
> The interface {{org.apache.hadoop.hive.metastore.IMetaStoreClient}} declares a method {{getPartition}} as:
> {code}
> Partition getPartition(String tblName, String dbName, List<String> partVals) throws NoSuchObjectException, MetaException, TException;
> {code}
> This is implemented in {{org.apache.hadoop.hive.metastore.HiveMetaStoreClient}} as:
> {code}
> public Partition getPartition(String db_name, String tbl_name, List<String> part_vals) throws NoSuchObjectException, MetaException, TException {
> return deepCopy(filterHook.filterPartition(client.get_partition(db_name, tbl_name, part_vals)));
> }
> {code}
> Note that in the above code the param named {{db_name}} occupies the {{tbl_name}} equivalent in the {{IMetaStoreClient}} method and vice-versa.
> The method called in {{HiveMetaStoreClient}} also seemingly expects {{db_name}} to appear first (see {{ThriftHiveMetastore.Iface.get_partition}}):
> {code}
> public Partition get_partition(String db_name, String tbl_name, List<String> part_vals) throws MetaException, NoSuchObjectException, org.apache.thrift.TException;
> {code}
> And following this all the way through to the implementation of {{org.apache.hadoop.hive.metastore.ObjectStore.getMTable(String, String)}} shows that the database name is ultimately taken from the first argument.
> Therefore I propose that the order needs to be corrected on {{IMetaStoreClient}}.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)