Cao Junliang created HIVE-20922:
-----------------------------------

             Summary: HiveServer2 user is switched to another occasionally
                 Key: HIVE-20922
                 URL: https://issues.apache.org/jira/browse/HIVE-20922
             Project: Hive
          Issue Type: Bug
    Affects Versions: 1.2.1
         Environment: HiveServer2 version: 1.2.1

Hive and yarn were deployed in same machine.
            Reporter: Cao Junliang


The HiveServer2(version 1.2.1)authentication configuration is:
authentication type: kerberos
kerboros principal: hive/h...@dc1.fh.com

Other infomation:
client principal: n...@dc1.fh.com
yarn service principal:yarn/_h...@dc1.fh.com

After the hive service was started, application could use jdbc to access hive 
service. But sometime later, clients got the exception. The user of the hive 
service was swiched to another one (yarn).

In my enviroment, Hive and Yarn were deployed in same machine, the user of yarn 
service is yarn/_h...@dc1.fh.com. Bebore the exception accured, the hive 
service was not restarted.

==============================================================

Main logs:

2018-11-11 23:59:35 [HiveServer2-Handler-Pool: Thread-115739] INFO 
org.apache.hive.service.cli.thrift.ThriftCLIService.OpenSession(294) -Client 
protocol version: HIVE_CLI_SERVICE_PROTOCOL_V8
2018-11-11 23:59:35 [HiveServer2-Handler-Pool: Thread-115739] WARN 
org.apache.hive.service.cli.thrift.ThriftCLIService.OpenSession(308) -Error 
opening session: 
org.apache.hive.service.cli.HiveSQLException: Failed to open new session: 
java.lang.RuntimeException: java.lang.RuntimeException: 
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException):
 User: yarn/mas...@dc1.fh.com is not allowed to impersonate nbhd
 at 
org.apache.hive.service.cli.session.SessionManager.openSession(SessionManager.java:266)
 at 
org.apache.hive.service.cli.CLIService.openSessionWithImpersonation(CLIService.java:202)
 at 
org.apache.hive.service.cli.thrift.ThriftCLIService.getSessionHandle(ThriftCLIService.java:402)
 at 
org.apache.hive.service.cli.thrift.ThriftCLIService.OpenSession(ThriftCLIService.java:297)
 at 
org.apache.hive.service.cli.thrift.TCLIService$Processor$OpenSession.getResult(TCLIService.java:1253)
 at 
org.apache.hive.service.cli.thrift.TCLIService$Processor$OpenSession.getResult(TCLIService.java:1238)
 at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
 at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
 at 
org.apache.hadoop.hive.thrift.HadoopThriftAuthBridge$Server$TUGIAssumingProcessor.process(HadoopThriftAuthBridge.java:692)
 at 
org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:285)
 at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.RuntimeException: java.lang.RuntimeException: 
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException):
 User: yarn/mas...@dc1.fh.com is not allowed to impersonate nbhd
 at 
org.apache.hive.service.cli.session.HiveSessionProxy.invoke(HiveSessionProxy.java:83)
 at 
org.apache.hive.service.cli.session.HiveSessionProxy.access$000(HiveSessionProxy.java:36)
 at 
org.apache.hive.service.cli.session.HiveSessionProxy$1.run(HiveSessionProxy.java:63)
 at java.security.AccessController.doPrivileged(Native Method)
 at javax.security.auth.Subject.doAs(Subject.java:415)
 at 
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1628)
 at 
org.apache.hive.service.cli.session.HiveSessionProxy.invoke(HiveSessionProxy.java:59)
 at com.sun.proxy.$Proxy19.open(Unknown Source)
 at 
org.apache.hive.service.cli.session.SessionManager.openSession(SessionManager.java:258)
 ... 12 more
Caused by: java.lang.RuntimeException: 
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException):
 User: yarn/mas...@dc1.fh.com is not allowed to impersonate nbhd
 at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:522)
 at 
org.apache.hive.service.cli.session.HiveSessionImpl.open(HiveSessionImpl.java:137)
 at sun.reflect.GeneratedMethodAccessor22.invoke(Unknown Source)
 at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:606)
 at 
org.apache.hive.service.cli.session.HiveSessionProxy.invoke(HiveSessionProxy.java:78)
 ... 20 more
Caused by: 
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException):
 User: yarn/mas...@dc1.fh.com is not allowed to impersonate nbhd
 at org.apache.hadoop.ipc.Client.call(Client.java:1468)
 at org.apache.hadoop.ipc.Client.call(Client.java:1399)
 at 
org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:232)
 at com.sun.proxy.$Proxy14.getFileInfo(Unknown Source)
 at 
org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.getFileInfo(ClientNamenodeProtocolTranslatorPB.java:752)
 at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
 at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:606)
 at 
org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:187)
 at 
org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:102)
 at com.sun.proxy.$Proxy15.getFileInfo(Unknown Source)
 at org.apache.hadoop.hdfs.DFSClient.getFileInfo(DFSClient.java:1988)
 at 
org.apache.hadoop.hdfs.DistributedFileSystem$18.doCall(DistributedFileSystem.java:1118)
 at 
org.apache.hadoop.hdfs.DistributedFileSystem$18.doCall(DistributedFileSystem.java:1114)
 at 
org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81)
 at 
org.apache.hadoop.hdfs.DistributedFileSystem.getFileStatus(DistributedFileSystem.java:1114)
 at org.apache.hadoop.fs.FileSystem.exists(FileSystem.java:1400)
 at 
org.apache.hadoop.hive.ql.session.SessionState.createRootHDFSDir(SessionState.java:596)
 at 
org.apache.hadoop.hive.ql.session.SessionState.createSessionDirs(SessionState.java:554)
 at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:508)
 ... 25 more
2018-11-11 23:59:40 [HiveServer2-Handler-Pool: Thread-115741] INFO 
org.apache.hive.service.cli.thrift.ThriftCLIService.OpenSession(294) -Client 
protocol version: HIVE_CLI_SERVICE_PROTOCOL_V8
2018-11-11 23:59:40 [HiveServer2-Handler-Pool: Thread-115741] WARN 
org.apache.hive.service.cli.thrift.ThriftCLIService.OpenSession(308) -Error 
opening session: 
org.apache.hive.service.cli.HiveSQLException: Failed to open new session: 
java.lang.RuntimeException: java.lang.RuntimeException: 
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException):
 User: yarn/mas...@dc1.fh.com is not allowed to impersonate nbhd
 at 
org.apache.hive.service.cli.session.SessionManager.openSession(SessionManager.java:266)
 at 
org.apache.hive.service.cli.CLIService.openSessionWithImpersonation(CLIService.java:202)
 at 
org.apache.hive.service.cli.thrift.ThriftCLIService.getSessionHandle(ThriftCLIService.java:402)
 at 
org.apache.hive.service.cli.thrift.ThriftCLIService.OpenSession(ThriftCLIService.java:297)
 at 
org.apache.hive.service.cli.thrift.TCLIService$Processor$OpenSession.getResult(TCLIService.java:1253)
 at 
org.apache.hive.service.cli.thrift.TCLIService$Processor$OpenSession.getResult(TCLIService.java:1238)
 at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
 at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
 at 
org.apache.hadoop.hive.thrift.HadoopThriftAuthBridge$Server$TUGIAssumingProcessor.process(HadoopThriftAuthBridge.java:692)
 at 
org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:285)
 at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.RuntimeException: java.lang.RuntimeException: 
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException):
 User: yarn/mas...@dc1.fh.com is not allowed to impersonate nbhd
 at 
org.apache.hive.service.cli.session.HiveSessionProxy.invoke(HiveSessionProxy.java:83)
 at 
org.apache.hive.service.cli.session.HiveSessionProxy.access$000(HiveSessionProxy.java:36)
 at 
org.apache.hive.service.cli.session.HiveSessionProxy$1.run(HiveSessionProxy.java:63)
 at java.security.AccessController.doPrivileged(Native Method)
 at javax.security.auth.Subject.doAs(Subject.java:415)
 at 
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1628)
 at 
org.apache.hive.service.cli.session.HiveSessionProxy.invoke(HiveSessionProxy.java:59)
 at com.sun.proxy.$Proxy19.open(Unknown Source)
 at 
org.apache.hive.service.cli.session.SessionManager.openSession(SessionManager.java:258)
 ... 12 more
Caused by: java.lang.RuntimeException: 
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException):
 User: yarn/mas...@dc1.fh.com is not allowed to impersonate nbhd
 at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:522)
 at 
org.apache.hive.service.cli.session.HiveSessionImpl.open(HiveSessionImpl.java:137)
 at sun.reflect.GeneratedMethodAccessor22.invoke(Unknown Source)
 at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:606)
 at 
org.apache.hive.service.cli.session.HiveSessionProxy.invoke(HiveSessionProxy.java:78)
 ... 20 more
Caused by: 
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException):
 User: yarn/mas...@dc1.fh.com is not allowed to impersonate nbhd
 at org.apache.hadoop.ipc.Client.call(Client.java:1468)
 at org.apache.hadoop.ipc.Client.call(Client.java:1399)
 at 
org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:232)
 at com.sun.proxy.$Proxy14.getFileInfo(Unknown Source)
 at 
org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.getFileInfo(ClientNamenodeProtocolTranslatorPB.java:752)
 at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
 at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:606)
 at 
org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:187)
 at 
org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:102)
 at com.sun.proxy.$Proxy15.getFileInfo(Unknown Source)
 at org.apache.hadoop.hdfs.DFSClient.getFileInfo(DFSClient.java:1988)
 at 
org.apache.hadoop.hdfs.DistributedFileSystem$18.doCall(DistributedFileSystem.java:1118)
 at 
org.apache.hadoop.hdfs.DistributedFileSystem$18.doCall(DistributedFileSystem.java:1114)
 at 
org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81)
 at 
org.apache.hadoop.hdfs.DistributedFileSystem.getFileStatus(DistributedFileSystem.java:1114)
 at org.apache.hadoop.fs.FileSystem.exists(FileSystem.java:1400)
 at 
org.apache.hadoop.hive.ql.session.SessionState.createRootHDFSDir(SessionState.java:596)
 at 
org.apache.hadoop.hive.ql.session.SessionState.createSessionDirs(SessionState.java:554)
 at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:508)
 ... 25 more
2018-11-11 23:59:45 [HiveServer2-Handler-Pool: Thread-115743] INFO 
org.apache.hive.service.cli.thrift.ThriftCLIService.OpenSession(294) -Client 
protocol version: HIVE_CLI_SERVICE_PROTOCOL_V8

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to