[
https://issues.apache.org/jira/browse/HCATALOG-484?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13444596#comment-13444596
]
Travis Crawford commented on HCATALOG-484:
------------------------------------------
[~pengfeng] I totally agree about introducing a dependency on the {{ql}}
package – we shouldn't ever need to import anything Hive outside the
serde/metastore (and common/conf) packages.
That said, this is how the code is currently structured. I added a link to
HIVE-3278 where we're discussing a refactor to move these extra-business-logic
classes into the metastore package. Once we reach consensus on the refactor I
can put together the patch.
> HCatalog should use ql.metadata Table and Partition classes
> -----------------------------------------------------------
>
> Key: HCATALOG-484
> URL: https://issues.apache.org/jira/browse/HCATALOG-484
> Project: HCatalog
> Issue Type: Bug
> Reporter: Travis Crawford
> Assignee: Travis Crawford
> Attachments: HCATALOG-484_metadata_api.1.patch
>
>
> Hive has two sets of classes for representing tables and partitions. For
> example:
> * {{import org.apache.hadoop.hive.ql.metadata.Table}}
> * {{import org.apache.hadoop.hive.metastore.api.Table}}
> The {{metadata.api}} versions represent exactly what's stored in the
> metastore, while the {{ql.metadata}} versions add some business logic, such
> as providing serde-reported columns.
> HCatalog should always use the {{ql.metadata}} versions of Table and
> Partition classes except when communicating with the metastore, or
> serializing these objects into the job conf.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira