[ https://issues.apache.org/jira/browse/HIVE-17580?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16387354#comment-16387354 ]
Vihang Karajgaonkar commented on HIVE-17580: -------------------------------------------- Combining the enums is not going to help solve the problem, since metastore needs to get compile time access to ObjectInspector.TypeCategory unless we are okay to break compatibility by modifying the signature of getCategory method in TypeInfo. TypeInfo was annotated as public in HIVE-17157 so technically there hasn't been any released version of Hive which has it as a public API. So I think we are allowed to break compatibility with that respect. What do you think? The other option suggested of moving ObjectInspector to standalone-metastore sounds weird to me since it has got nothing to do with metastore. Moving ObjectInspector to storage-api is not ideal but atleast is lesser of the two evils. It could be argued that it more a storage-api than a metastore api since it is related to how to interpret the serialized and deserialized data. I don't see a particular logically grouping of classes in storage-api (for example, HiveDecimal is in storage-api, but the other types are in serde). I think in the longer run we would need to reorganizing this in more consistent modules anyways. > 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)