You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Miklos Szurap (Jira)" <ji...@apache.org> on 2021/04/29 08:40:01 UTC
[jira] [Created] (HIVE-25074) Remove Metastore flushCache usage
Miklos Szurap created HIVE-25074:
------------------------------------
Summary: Remove Metastore flushCache usage
Key: HIVE-25074
URL: https://issues.apache.org/jira/browse/HIVE-25074
Project: Hive
Issue Type: Improvement
Components: Metastore, Standalone Metastore
Affects Versions: 4.0.0
Reporter: Miklos Szurap
The "flushCache" in HiveMetaStore with the ObjectStore implementation is currently a NOOP:
{code:java}
public void flushCache() {
// NOP as there's no caching
} {code}
The HBaseStore (HBaseReadWrite) had some logic in it, however it has been removed in HIVE-17234.
As I see the calls are going like this:
HiveMetaStoreClient.flushCache() -> CachedStore.flushCache() -> ObjectStore.flushCache()
There are significant amount of calls (about 10% of all calls) made from the client to the server - to do nothing. We could spare the call to the server completely, including getting a DB connection which can take 1+ seconds under high load scenarios slowing down Hive queries unnecessarily.
Can we:
# Deprecate the RawStore.flushCache (if there are other implementations)
# Deprecate the HiveMetaStoreClient.flushCache()
# Do the NOOP on the client side in HiveMetaStoreClient.flushCache() (while it is not removed in a next version)
--
This message was sent by Atlassian Jira
(v8.3.4#803005)