[ https://issues.apache.org/jira/browse/HIVE-17580?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16386564#comment-16386564 ]
Owen O'Malley edited comment on HIVE-17580 at 3/5/18 7:10 PM: -------------------------------------------------------------- The problem with putting ObjectInspector into storage-api is that ObjectInspector by itself doesn't do anything. You need the cloud of stuff around ObjectInspector to do anything. It is also ill fitting because storage-api is the *vectorized* api. It by design does not include the ObjectInspector and the associated slow legacy path for Hive. Maybe a simpler fix is to move ObjectInspector into standalone metastore and make serde depend on it. That would at least not pull ObjectInspect into the storage-api and only put it where need is. You could even combine the two with: {code} public enum MetastoreTypeCategory {...}; {code} and have ObjectInspector.TypeCategory with: {code} public MetastoreTypeCategory toMetastore(); {code} was (Author: owen.omalley): The problem with putting ObjectInspector into storage-api is that ObjectInspector by itself doesn't do anything. You need the cloud of stuff around ObjectInspector to do anything. It is also ill fitting because storage-api is the *vectorized* api. It by design does not include the ObjectInspector and the associated slow legacy path for Hive. Maybe a simpler fix is to move ObjectInspector into standalone metastore and make serde depend on it. That would at least not pull ObjectInspect into the storage-api and only put it where need is. You could even combine the two with: {{public enum MetastoreTypeCategory {...};}} and have ObjectInspector.TypeCategory with: {{public MetastoreTypeCategory toMetastore();}} > Remove dependency of get_fields_with_environment_context API to serde > --------------------------------------------------------------------- > > Key: HIVE-17580 > URL: https://issues.apache.org/jira/browse/HIVE-17580 > Project: Hive > Issue Type: Sub-task > Components: Standalone Metastore > Reporter: Vihang Karajgaonkar > Assignee: Vihang Karajgaonkar > Priority: Major > Labels: pull-request-available > Attachments: HIVE-17580.003-standalone-metastore.patch, > HIVE-17580.04-standalone-metastore.patch, > HIVE-17580.05-standalone-metastore.patch, > HIVE-17580.06-standalone-metastore.patch, > HIVE-17580.07-standalone-metastore.patch, > HIVE-17580.08-standalone-metastore.patch, > HIVE-17580.09-standalone-metastore.patch, > HIVE-17580.092-standalone-metastore.patch > > > {{get_fields_with_environment_context}} metastore API uses {{Deserializer}} > class to access the fields metadata for the cases where it is stored along > with the data files (avro tables). The problem is Deserializer classes is > defined in hive-serde module and in order to make metastore independent of > Hive we will have to remove this dependency (atleast we should change it to > runtime dependency instead of compile time). > The other option is investigate if we can use SearchArgument to provide this > functionality. -- This message was sent by Atlassian JIRA (v7.6.3#76005)