Hello,
I've been trying "ALTER TABLE (table_name) COMPACT 'MAJOR'" on my Hive 2
environment, but it always fails (HDP 2.6.5 precisely). It seems that the
merged base file is created but the delta is not deleted.
I found that it was because the HiveMetastore Client can't connect to the
metastore because of GSS Initiate failed during cleaning step.

Here after the logs on the Metastore side (DEBUG mode activated):

2019-08-25 21:42:51,729 INFO  [Thread-24]: hive.metastore
*(HiveMetaStoreClient.java:open(451))
- Trying to connect to metastore with URI thrift://XXX:9083*
2019-08-25 21:42:51,747 DEBUG [Thread-24]:
security.UserGroupInformation
*(UserGroupInformation.java:logPrivilegedAction(1896))
- PrivilegedAction as:myuser (auth:PROXY) via hive/XXXX (auth:KERBEROS) *
from:org.apache.hadoop.hive.thrift.client.TUGIAssumingTransport.open(TUGIAssumingTransport.java:49)
2019-08-25 21:42:51,748 DEBUG [Thread-24]: transport.TSaslTransport
(TSaslTransport.java:open(261)) - opening transport
org.apache.thrift.transport.TSaslClientTransport@58fdf6d4
2019-08-25 21:42:51,750 ERROR [Thread-24]: transport.TSaslTransport
(TSaslTransport.java:open(315)) - SASL negotiation failure
*javax.security.sasl.SaslException: GSS initiate failed [Caused by
GSSException: No valid credentials provided (Mechanism level: Failed to
find any Kerberos tgt)]*
at
com.sun.security.sasl.gsskerb.GssKrb5Client.evaluateChallenge(GssKrb5Client.java:211)
at
org.apache.thrift.transport.TSaslClientTransport.handleSaslStartMessage(TSaslClientTransport.java:94)
at org.apache.thrift.transport.TSaslTransport.open(TSaslTransport.java:271)
at
org.apache.thrift.transport.TSaslClientTransport.open(TSaslClientTransport.java:37)
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.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1869)
at
org.apache.hadoop.hive.thrift.client.TUGIAssumingTransport.open(TUGIAssumingTransport.java:49)
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.open(HiveMetaStoreClient.java:495)
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:290)
at
org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.<init>(SessionHiveMetaStoreClient.java:76)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at
org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1564)
at
org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.<init>(RetryingMetaStoreClient.java:92)
at
org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:138)
at
org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:110)
at
org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:3641)
at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:3675)
at org.apache.hadoop.hive.ql.metadata.Hive.getAllFunctions(Hive.java:3917)
at org.apache.hadoop.hive.ql.metadata.Hive.reloadFunctions(Hive.java:225)
at org.apache.hadoop.hive.ql.metadata.Hive.<clinit>(Hive.java:217)
at
org.apache.hadoop.hive.ql.txn.compactor.Cleaner.removeFiles(Cleaner.java:344)
at
org.apache.hadoop.hive.ql.txn.compactor.Cleaner.access$000(Cleaner.java:63)
at org.apache.hadoop.hive.ql.txn.compactor.Cleaner$1.run(Cleaner.java:295)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1869)
at org.apache.hadoop.hive.ql.txn.compactor.Cleaner.clean(Cleaner.java:292)
at org.apache.hadoop.hive.ql.txn.compactor.Cleaner.run(Cleaner.java:162)
Caused by: GSSException: No valid credentials provided (Mechanism level:
Failed to find any Kerberos tgt)
at
sun.security.jgss.krb5.Krb5InitCredential.getInstance(Krb5InitCredential.java:147)
at
sun.security.jgss.krb5.Krb5MechFactory.getCredentialElement(Krb5MechFactory.java:122)
at
sun.security.jgss.krb5.Krb5MechFactory.getMechanismContext(Krb5MechFactory.java:187)
at
sun.security.jgss.GSSManagerImpl.getMechanismContext(GSSManagerImpl.java:224)
at sun.security.jgss.GSSContextImpl.initSecContext(GSSContextImpl.java:212)
at sun.security.jgss.GSSContextImpl.initSecContext(GSSContextImpl.java:179)
at
com.sun.security.sasl.gsskerb.GssKrb5Client.evaluateChallenge(GssKrb5Client.java:192)
... 33 more
2019-08-25 21:42:51,763 DEBUG [Thread-24]: transport.TSaslTransport
(TSaslTransport.java:sendSaslMessage(162)) - CLIENT: Writing message with
status BAD and payload length 19
2019-08-25 21:42:51,764 WARN  [Thread-24]: hive.metastore
*(HiveMetaStoreClient.java:open(505)) - Failed to connect to the MetaStore
Server...org.apache.thrift.transport.TTransportException: GSS initiate
failed*
at
org.apache.thrift.transport.TSaslTransport.sendAndThrowMessage(TSaslTransport.java:232)
at org.apache.thrift.transport.TSaslTransport.open(TSaslTransport.java:316)
at
org.apache.thrift.transport.TSaslClientTransport.open(TSaslClientTransport.java:37)
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.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1869)
at
org.apache.hadoop.hive.thrift.client.TUGIAssumingTransport.open(TUGIAssumingTransport.java:49)
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.open(HiveMetaStoreClient.java:495)
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:290)
at
org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.<init>(SessionHiveMetaStoreClient.java:76)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at
org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1564)
at
org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.<init>(RetryingMetaStoreClient.java:92)
at
org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:138)
at
org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:110)
at
org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:3641)
at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:3675)
at org.apache.hadoop.hive.ql.metadata.Hive.getAllFunctions(Hive.java:3917)
at org.apache.hadoop.hive.ql.metadata.Hive.reloadFunctions(Hive.java:225)
at org.apache.hadoop.hive.ql.metadata.Hive.<clinit>(Hive.java:217)


* at
org.apache.hadoop.hive.ql.txn.compactor.Cleaner.removeFiles(Cleaner.java:344)
at
org.apache.hadoop.hive.ql.txn.compactor.Cleaner.access$000(Cleaner.java:63)
at org.apache.hadoop.hive.ql.txn.compactor.Cleaner$1.run(Cleaner.java:295)*
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1869)
at org.apache.hadoop.hive.ql.txn.compactor.Cleaner.clean(Cleaner.java:292)
at org.apache.hadoop.hive.ql.txn.compactor.Cleaner.run(Cleaner.java:162)
2019-08-25 21:42:51,764 INFO  [Thread-24]: hive.metastore
(HiveMetaStoreClient.java:open(539)) - Waiting 5 seconds before next
connection attempt.
2019-08-25 21:42:51,766 DEBUG [pool-7-thread-1]:
security.UserGroupInformation
*(UserGroupInformation.java:logPrivilegedAction(1896))
- PrivilegedAction as:hive/XXXXX (auth:KERBEROS) *
from:org.apache.hadoop.hive.thrift.HadoopThriftAuthBridge$Server$TUGIAssumingTransportFactory.getTransport(HadoopThriftAuthBridge.java:606)
2019-08-25 21:42:51,769 DEBUG [pool-7-thread-1]:
transport.TSaslServerTransport
(TSaslServerTransport.java:getTransport(213)) - transport map does not
contain key
2019-08-25 21:42:51,769 DEBUG [pool-7-thread-1]: transport.TSaslTransport
(TSaslTransport.java:open(261)) - opening transport
org.apache.thrift.transport.TSaslServerTransport@327e3ff0
2019-08-25 21:42:51,771 DEBUG [pool-7-thread-1]:
transport.TSaslServerTransport
(TSaslServerTransport.java:getTransport(218)) - failed to open server
transport
org.apache.thrift.transport.TTransportException: Peer indicated failure:
GSS initiate failed
at
org.apache.thrift.transport.TSaslTransport.receiveSaslMessage(TSaslTransport.java:199)
at
org.apache.thrift.transport.TSaslServerTransport.handleSaslStartMessage(TSaslServerTransport.java:125)
at org.apache.thrift.transport.TSaslTransport.open(TSaslTransport.java:271)
at
org.apache.thrift.transport.TSaslServerTransport.open(TSaslServerTransport.java:41)
at
org.apache.thrift.transport.TSaslServerTransport$Factory.getTransport(TSaslServerTransport.java:216)
at
org.apache.hadoop.hive.thrift.HadoopThriftAuthBridge$Server$TUGIAssumingTransportFactory$1.run(HadoopThriftAuthBridge.java:609)
at
org.apache.hadoop.hive.thrift.HadoopThriftAuthBridge$Server$TUGIAssumingTransportFactory$1.run(HadoopThriftAuthBridge.java:606)
at java.security.AccessController.doPrivileged(Native Method)

Reply via email to