ngsg commented on PR #5771:
URL: https://github.com/apache/hive/pull/5771#issuecomment-2898349847

    > To avoid them, I am wondering if we can have an abstract class that 
enforces two rules. This is [a sample 
implementation](https://github.com/okumin/hive/commit/389bb74505a440b3edae664626e09781bd69a96d).
   > 
   > * Rule A: Any subclass of IMetaStoreClient can implement the most generic 
variant of family methods. For example, if IMetaStoreClient has 
`getTableMeta(db, tbl, types)` and `getTableMeta(catalog, db, tbl, types)`, 
vendors must implement only `getTableMeta(catalog, db, tbl, types)`
   > * Rule B: All family methods behave consistently. For example, if 
IMetaStoreClient has `getTableMeta(db, tbl, types)` and `getTableMeta(catalog, 
db, tbl, types)`, BOTH handle tmp tables or NEITHER handles tmp tables
   
   I also thought of a similar approach when I was writing the PoC, and I agree 
that the two rules you stated must be upheld. Let me check the code again and 
try to implement your idea in the next commit.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: gitbox-unsubscr...@hive.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: gitbox-unsubscr...@hive.apache.org
For additional commands, e-mail: gitbox-h...@hive.apache.org

Reply via email to