This is an automated email from the ASF dual-hosted git repository.
lesun pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/gobblin.git
The following commit(s) were added to refs/heads/master by this push:
new ebc0ee2 [GOBBLIN-1434] Make the maxWaitMills to get a hive client be
configurable
ebc0ee2 is described below
commit ebc0ee2cbf04b4f4097d5e255639fbfc02c46907
Author: Zihan Li <[email protected]>
AuthorDate: Mon Apr 26 16:46:23 2021 -0700
[GOBBLIN-1434] Make the maxWaitMills to get a hive client be configurable
Closes #3267 from ZihanLi58/GOBBLIN-1434
---
.../java/org/apache/gobblin/hive/HiveMetastoreClientPool.java | 1 +
.../src/main/java/org/apache/gobblin/hive/HiveRegProps.java | 9 +++++++++
2 files changed, 10 insertions(+)
diff --git
a/gobblin-hive-registration/src/main/java/org/apache/gobblin/hive/HiveMetastoreClientPool.java
b/gobblin-hive-registration/src/main/java/org/apache/gobblin/hive/HiveMetastoreClientPool.java
index a1b4051..680fe09 100644
---
a/gobblin-hive-registration/src/main/java/org/apache/gobblin/hive/HiveMetastoreClientPool.java
+++
b/gobblin-hive-registration/src/main/java/org/apache/gobblin/hive/HiveMetastoreClientPool.java
@@ -153,6 +153,7 @@ public class HiveMetastoreClientPool {
GenericObjectPoolConfig config = new GenericObjectPoolConfig();
config.setMaxTotal(this.hiveRegProps.getNumThreads());
config.setMaxIdle(this.hiveRegProps.getNumThreads());
+
config.setMaxWaitMillis(this.hiveRegProps.getMaxWaitMillisBorrowingClient());
String extraConfigTarget =
properties.getProperty(POOL_HIVE_ADDITIONAL_CONFIG_TARGET, "");
diff --git
a/gobblin-hive-registration/src/main/java/org/apache/gobblin/hive/HiveRegProps.java
b/gobblin-hive-registration/src/main/java/org/apache/gobblin/hive/HiveRegProps.java
index fd5d8e8..478961a 100644
---
a/gobblin-hive-registration/src/main/java/org/apache/gobblin/hive/HiveRegProps.java
+++
b/gobblin-hive-registration/src/main/java/org/apache/gobblin/hive/HiveRegProps.java
@@ -44,6 +44,8 @@ public class HiveRegProps extends State {
public static final String HIVE_DB_ROOT_DIR = "hive.db.root.dir";
public static final String HIVE_REGISTER_THREADS = "hive.register.threads";
+ public static final String HIVE_MAX_WAIT_MILLS_BORROW_CLIENT =
"hive.register.maxWaitMills.borrow.client";
+ public static final long DEFAULT_HIVE_MAX_WAIT_MILLS_BORROW_CLIENT = -1L;
public static final int DEFAULT_HIVE_REGISTER_THREADS = 20;
public static final String HIVE_TABLE_PARTITION_PROPS =
"hive.table.partition.props";
public static final String HIVE_STORAGE_PROPS = "hive.storage.props";
@@ -150,4 +152,11 @@ public class HiveRegProps extends State {
public int getNumThreads() {
return getPropAsInt(HIVE_REGISTER_THREADS, DEFAULT_HIVE_REGISTER_THREADS);
}
+ /**
+ * Get max wait mills when borrow a hive client from pool from {@link
#HIVE_MAX_WAIT_MILLS_BORROW_CLIENT}, with a default value of
+ * {@link #DEFAULT_HIVE_MAX_WAIT_MILLS_BORROW_CLIENT}.
+ */
+ public long getMaxWaitMillisBorrowingClient() {
+ return getPropAsLong(HIVE_MAX_WAIT_MILLS_BORROW_CLIENT,
DEFAULT_HIVE_MAX_WAIT_MILLS_BORROW_CLIENT);
+ }
}