[
https://issues.apache.org/jira/browse/HIVE-27473?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17938568#comment-17938568
]
Seonggon Namgung commented on HIVE-27473:
-----------------------------------------
[~okumin] , thank you for taking the time to analyze the sample and share your
opinion.
The order of steps is slightly different because I didn’t fully understand the
current implementation and focused on filling in all the methods. However, I
expect that we can minimize these differences so that they do not impact
correctness or behaviour.
I also agree that Option 2 might be slightly easier than Option 1 due to the
large number of deprecated or overloaded methods in IMetaStoreClient. The
number of @Override annotations in HiveMetaStoreClient.java and
AbstractThriftHiveMetaStore are 369 and 272, respectively, and I guess this
difference comes from overloaded methods such as `getTable` vs.
`get_table_req`. However, in my opinion, this disadvantage is acceptable
compared to the advantages of Option 1.
Regarding the restructuring issue, I think we need additional checks and
discussions. I plan to organize the sample and write a design document, and I
believe we can make a decision once all the expected changes in HIVE-27473 are
summarized.
> Make SessionHiveMetaStoreClient and HiveMetaStoreClientWithLocalCache
> composable
> --------------------------------------------------------------------------------
>
> Key: HIVE-27473
> URL: https://issues.apache.org/jira/browse/HIVE-27473
> Project: Hive
> Issue Type: Improvement
> Components: Hive
> Affects Versions: 4.0.0-alpha-2
> Reporter: Shohei Okumiya
> Assignee: Shohei Okumiya
> Priority: Major
>
> Currently, we implement the two classes using inheritance. It assumes we
> always use a single implementation of IMetaStoreClient.
> Some community members have been willing to make IMetaStoreClient pluggable
> as proposed in HIVE-12679. Considering the use case, we should provide the
> additional traits with composition over inheritance.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)