koodin9 commented on code in PR #5775:
URL: https://github.com/apache/hive/pull/5775#discussion_r2053576969


##########
standalone-metastore/metastore-common/src/main/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java:
##########
@@ -502,6 +506,9 @@ public void reconnect() throws MetaException {
         // connection has died and the default connection is likely to be the 
first array element.
         promoteRandomMetaStoreURI();
       }
+
+      generateProxyUserDelegationToken();

Review Comment:
   @deniskuzZ 
   The error stack trace below was generated from Hive version 2.3.x. However, 
it appears the same issue likely exists in the master branch as well, so I've 
created this Pull Request.
   
   If the HiveMetaStore is restarted while a service is running with the 
HADOOP_PROXY_USER environment variable configured, the following error occurs.
   ```
   [2025-04-19 15:45:48,446] INFO [45337-limtan-ib-g19-3|task-0] Trying to 
connect to metastore with URI thrift://koodin-test-metastore-1.com:9083 
(hive.metastore:410)
   [2025-04-19 15:45:48,452] ERROR [45337-limtan-ib-g19-3|task-0] SASL 
negotiation failure (org.apache.thrift.transport.TSaslTransport:278)
   javax.security.sasl.SaslException: GSS initiate failed [Caused by 
GSSException: No valid credentials provided (Mechanism level: Failed to find 
any Kerberos tgt)]
        at 
jdk.security.jgss/com.sun.security.sasl.gsskerb.GssKrb5Client.evaluateChallenge(Unknown
 Source)
        at 
org.apache.thrift.transport.TSaslClientTransport.handleSaslStartMessage(TSaslClientTransport.java:96)
        at 
org.apache.thrift.transport.TSaslTransport.open(TSaslTransport.java:236)
        at 
org.apache.thrift.transport.TSaslClientTransport.open(TSaslClientTransport.java:39)
        at 
org.apache.hadoop.hive.thrift.client.TUGIAssumingTransport$1.run(TUGIAssumingTransport.java:52)
        at 
org.apache.hadoop.hive.thrift.client.TUGIAssumingTransport$1.run(TUGIAssumingTransport.java:49)
        at java.base/java.security.AccessController.doPrivileged(Unknown Source)
        at java.base/javax.security.auth.Subject.doAs(Unknown Source)
        at 
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1899)
        at 
org.apache.hadoop.hive.thrift.client.TUGIAssumingTransport.open(TUGIAssumingTransport.java:49)
        at 
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.open(HiveMetaStoreClient.java:494)
        at 
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.reconnect(HiveMetaStoreClient.java:341)
        at 
org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:163)
        at jdk.proxy4/jdk.proxy4.$Proxy188.getTable(Unknown Source)
        at 
org.apache.iceberg.hive.HiveTableOperations.lambda$doRefresh$0(HiveTableOperations.java:146)
        at org.apache.iceberg.ClientPoolImpl.run(ClientPoolImpl.java:58)
        at org.apache.iceberg.ClientPoolImpl.run(ClientPoolImpl.java:51)
        at 
org.apache.iceberg.hive.CachedClientPool.run(CachedClientPool.java:122)
        at 
org.apache.iceberg.hive.HiveTableOperations.doRefresh(HiveTableOperations.java:146)
        at 
org.apache.iceberg.BaseMetastoreTableOperations.refresh(BaseMetastoreTableOperations.java:97)
        at org.apache.iceberg.BaseTable.refresh(BaseTable.java:73)
        at io.tabular.iceberg.connect.channel.Worker.write(Worker.java:133)
        at io.tabular.iceberg.connect.channel.TaskImpl.put(TaskImpl.java:51)
        at 
io.tabular.iceberg.connect.IcebergSinkTask.lambda$put$4(IcebergSinkTask.java:181)
        at java.base/java.security.AccessController.doPrivileged(Unknown Source)
        at java.base/javax.security.auth.Subject.doAs(Unknown Source)
        at 
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1899)
        at 
io.tabular.iceberg.connect.IcebergSinkTask.put(IcebergSinkTask.java:179)
        at 
org.apache.kafka.connect.runtime.WorkerSinkTask.deliverMessages(WorkerSinkTask.java:605)
        at 
org.apache.kafka.connect.runtime.WorkerSinkTask.poll(WorkerSinkTask.java:344)
        at 
org.apache.kafka.connect.runtime.WorkerSinkTask.iteration(WorkerSinkTask.java:246)
        at 
org.apache.kafka.connect.runtime.WorkerSinkTask.execute(WorkerSinkTask.java:215)
        at 
org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:225)
        at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:280)
        at 
org.apache.kafka.connect.runtime.isolation.Plugins.lambda$withClassLoader$1(Plugins.java:237)
        at 
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown 
Source)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown 
Source)
        at java.base/java.lang.Thread.run(Unknown Source)
   Caused by: GSSException: No valid credentials provided (Mechanism level: 
Failed to find any Kerberos tgt)
        at 
java.security.jgss/sun.security.jgss.krb5.Krb5InitCredential.getInstance(Unknown
 Source)
        at 
java.security.jgss/sun.security.jgss.krb5.Krb5MechFactory.getCredentialElement(Unknown
 Source)
        at 
java.security.jgss/sun.security.jgss.krb5.Krb5MechFactory.getMechanismContext(Unknown
 Source)
        at 
java.security.jgss/sun.security.jgss.GSSManagerImpl.getMechanismContext(Unknown 
Source)
        at 
java.security.jgss/sun.security.jgss.GSSContextImpl.initSecContext(Unknown 
Source)
        at 
java.security.jgss/sun.security.jgss.GSSContextImpl.initSecContext(Unknown 
Source)
        ... 40 more
   
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: gitbox-unsubscr...@hive.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: gitbox-unsubscr...@hive.apache.org
For additional commands, e-mail: gitbox-h...@hive.apache.org

Reply via email to