This is an automated email from the ASF dual-hosted git repository.

sivabalan pushed a commit to branch branch-0.x
in repository https://gitbox.apache.org/repos/asf/hudi.git


The following commit(s) were added to refs/heads/branch-0.x by this push:
     new baf99178271a fix: Set credentials for Hive metastore based lock 
provider (#14319)
baf99178271a is described below

commit baf99178271a18a0ae96aafe2e75a71fda9421f5
Author: Lin Liu <[email protected]>
AuthorDate: Mon Feb 9 19:48:46 2026 -0800

    fix: Set credentials for Hive metastore based lock provider (#14319)
    
    
    ---------
    
    Co-authored-by: Aditya Goenka <[email protected]>
---
 .../transaction/lock/HiveMetastoreBasedLockProvider.java    | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git 
a/hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/transaction/lock/HiveMetastoreBasedLockProvider.java
 
b/hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/transaction/lock/HiveMetastoreBasedLockProvider.java
index b458df9a5796..6e484a142164 100644
--- 
a/hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/transaction/lock/HiveMetastoreBasedLockProvider.java
+++ 
b/hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/transaction/lock/HiveMetastoreBasedLockProvider.java
@@ -28,6 +28,7 @@ import org.apache.hudi.hive.util.IMetaStoreClientUtil;
 import org.apache.hudi.storage.StorageConfiguration;
 
 import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.fs.CommonConfigurationKeysPublic;
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.metastore.IMetaStoreClient;
 import org.apache.hadoop.hive.metastore.LockRequestBuilder;
@@ -40,6 +41,7 @@ import org.apache.hadoop.hive.metastore.api.LockType;
 import org.apache.hadoop.hive.metastore.api.MetaException;
 import org.apache.hadoop.hive.ql.metadata.Hive;
 import org.apache.hadoop.hive.ql.metadata.HiveException;
+import org.apache.hadoop.hive.shims.ShimLoader;
 import org.apache.thrift.TException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -90,6 +92,17 @@ public class HiveMetastoreBasedLockProvider implements 
LockProvider<LockResponse
 
   public HiveMetastoreBasedLockProvider(final LockConfiguration 
lockConfiguration, final StorageConfiguration<?> conf) {
     this(lockConfiguration);
+    try {
+      if 
(!StringUtils.isNullOrEmpty(conf.getString(CommonConfigurationKeysPublic.HADOOP_SECURITY_CREDENTIAL_PROVIDER_PATH,
 null))
+          && 
StringUtils.isNullOrEmpty(conf.getString(HiveConf.ConfVars.METASTOREPWD.varname,
 null))) {
+        String passwd = 
ShimLoader.getHadoopShims().getPassword((Configuration) conf.unwrap(), 
HiveConf.ConfVars.METASTOREPWD.varname);
+        if (!StringUtils.isNullOrEmpty(passwd)) {
+          conf.set(HiveConf.ConfVars.METASTOREPWD.varname, passwd);
+        }
+      }
+    } catch (Exception e) {
+      LOG.info("Exception while trying to get Hive password from hadoop 
credential store", e);
+    }
     try {
       HiveConf hiveConf = new HiveConf();
       setHiveLockConfs(hiveConf);

Reply via email to