This is an automated email from the ASF dual-hosted git repository. vihangk1 pushed a commit to branch branch-3 in repository https://gitbox.apache.org/repos/asf/hive.git
The following commit(s) were added to refs/heads/branch-3 by this push: new a91e6ec HIVE-21484 : Metastore API getVersion() should return real version (Vihang Karajgaonkar, reviewed by Naveen Gangam and Peter Vary) a91e6ec is described below commit a91e6ec6a2ea0475fec85e4b3e1abac570d2c602 Author: Vihang Karajgaonkar <vihan...@apache.org> AuthorDate: Fri Mar 29 10:48:30 2019 -0700 HIVE-21484 : Metastore API getVersion() should return real version (Vihang Karajgaonkar, reviewed by Naveen Gangam and Peter Vary) --- .../main/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java | 5 +++-- .../java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java | 5 +++++ .../java/org/apache/hadoop/hive/metastore/IMetaStoreClient.java | 6 ++++++ .../apache/hadoop/hive/metastore/HiveMetaStoreClientPreCatalog.java | 5 +++++ .../java/org/apache/hadoop/hive/metastore/TestHiveMetaStore.java | 6 ++++++ 5 files changed, 25 insertions(+), 2 deletions(-) diff --git a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java b/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java index 40affef..d7c8050 100644 --- a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java +++ b/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java @@ -4989,8 +4989,9 @@ public class HiveMetaStore extends ThriftHiveMetastore { @Override public String getVersion() throws TException { - endFunction(startFunction("getVersion"), true, null); - return "3.0"; + String version = MetastoreVersionInfo.getVersion(); + endFunction(startFunction("getVersion"), version != null, null); + return version; } @Override diff --git a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java b/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java index 5737777..fdfcaea 100644 --- a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java +++ b/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java @@ -3306,4 +3306,9 @@ public class HiveMetaStoreClient implements IMetaStoreClient, AutoCloseable { req.setMaxCreateTime(maxCreateTime); return client.get_runtime_stats(req); } + + @Override + public String getServerVersion() throws TException { + return client.getVersion(); + } } diff --git a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/IMetaStoreClient.java b/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/IMetaStoreClient.java index 9661beb..fe507b4 100644 --- a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/IMetaStoreClient.java +++ b/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/IMetaStoreClient.java @@ -3696,4 +3696,10 @@ public interface IMetaStoreClient { /** Reads runtime statistics. */ List<RuntimeStat> getRuntimeStats(int maxWeight, int maxCreateTime) throws TException; + /** + * Gets the version string of the metastore server which this client is connected to + * + * @return String representation of the version number of Metastore server (eg: 3.1.0-SNAPSHOT) + */ + String getServerVersion() throws TException; } diff --git a/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClientPreCatalog.java b/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClientPreCatalog.java index d91f737..1da20c1 100644 --- a/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClientPreCatalog.java +++ b/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClientPreCatalog.java @@ -3421,4 +3421,9 @@ public class HiveMetaStoreClientPreCatalog implements IMetaStoreClient, AutoClos public List<RuntimeStat> getRuntimeStats(int maxWeight, int maxCreateTime) throws TException { throw new UnsupportedOperationException(); } + + @Override + public String getServerVersion() throws TException { + return client.getVersion(); + } } diff --git a/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/TestHiveMetaStore.java b/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/TestHiveMetaStore.java index 6f52a52..542b742 100644 --- a/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/TestHiveMetaStore.java +++ b/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/TestHiveMetaStore.java @@ -46,6 +46,7 @@ import org.apache.hadoop.hive.metastore.client.builder.TableBuilder; import org.apache.hadoop.hive.metastore.conf.MetastoreConf; import org.apache.hadoop.hive.metastore.conf.MetastoreConf.ConfVars; import org.apache.hadoop.hive.metastore.utils.FileUtils; +import org.apache.hadoop.hive.metastore.utils.MetastoreVersionInfo; import org.apache.hadoop.hive.metastore.utils.SecurityUtils; import org.datanucleus.api.jdo.JDOPersistenceManager; import org.datanucleus.api.jdo.JDOPersistenceManagerFactory; @@ -3101,4 +3102,9 @@ public abstract class TestHiveMetaStore { int size = allUuids.size(); assertEquals(numAPICallsPerThread * parallelCalls, size); } + + @Test + public void testVersion() throws TException { + assertEquals(MetastoreVersionInfo.getVersion(), client.getServerVersion()); + } }