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

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


The following commit(s) were added to refs/heads/release-0.14.2-prep by this 
push:
     new 0212323882d9 fix: Set credentials for Hive metastore based lock 
provider (#18216)
0212323882d9 is described below

commit 0212323882d974f867f283c9576567c117caa113
Author: Pavithran Ravichandiran <[email protected]>
AuthorDate: Thu Mar 5 23:03:42 2026 -0800

    fix: Set credentials for Hive metastore based lock provider (#18216)
    
    
    ---------
    
    Co-authored-by: Aditya Goenka <[email protected]>
    Co-authored-by: Lin Liu <[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 df8489574926..2a0b7062029d 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
@@ -27,6 +27,7 @@ import org.apache.hudi.exception.HoodieLockException;
 import org.apache.hudi.hive.util.IMetaStoreClientUtil;
 
 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;
@@ -39,6 +40,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;
@@ -85,6 +87,17 @@ public class HiveMetastoreBasedLockProvider implements 
LockProvider<LockResponse
 
   public HiveMetastoreBasedLockProvider(final LockConfiguration 
lockConfiguration, final Configuration conf) {
     this(lockConfiguration);
+    try {
+      if 
(!StringUtils.isNullOrEmpty(conf.get(CommonConfigurationKeysPublic.HADOOP_SECURITY_CREDENTIAL_PROVIDER_PATH))
+          && 
StringUtils.isNullOrEmpty(conf.get(HiveConf.ConfVars.METASTOREPWD.varname))) {
+        String passwd = ShimLoader.getHadoopShims().getPassword(conf, 
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