Support Questions
Find answers, ask questions, and share your expertise

User: hive is not allowed to impersonate anonymous

Solved Go to solution
Highlighted

User: hive is not allowed to impersonate anonymous

Rising Star

I started working with ooze. I am trying to run work flow examples in the examples folder. However, when I try to run a hive action I get error number E0729. In the log file the error is:

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: hive is not allowed to impersonate anonymous 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.hive.service.auth.TSetIpAddressProcessor.process(TSetIpAddressProcessor.java:56) 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: hive is not allowed to impersonate anonymous 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:1657) at org.apache.hive.service.cli.session.HiveSessionProxy.invoke(HiveSessionProxy.java:59) at com.sun.proxy.$Proxy28.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: hive is not allowed to impersonate anonymous 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.GeneratedMethodAccessor12.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

my job.properties is

nameNode=hdfs://sandbox.hortonworks.com:8020
jobTracker=sandbox.hortonworks.com:8050
queueName=default
examplesRoot=examples
oozie.use.system.libpath=true
oozie.wf.application.path=${nameNode}/user/${user.name}/${examplesRoot}/apps/hive
1 ACCEPTED SOLUTION

Accepted Solutions
Highlighted

Re: User: hive is not allowed to impersonate anonymous

Super Guru
@hoda moradi

Please add/modify below properties in your core-site.xml

hadoop.proxyuser.hive.groups=*
hadoop.proxyuser.hive.hosts=*

Restart required services via Ambari UI and retry your query, it should work.

View solution in original post

5 REPLIES 5
Highlighted

Re: User: hive is not allowed to impersonate anonymous

Super Guru
@hoda moradi

Please add/modify below properties in your core-site.xml

hadoop.proxyuser.hive.groups=*
hadoop.proxyuser.hive.hosts=*

Restart required services via Ambari UI and retry your query, it should work.

View solution in original post

Highlighted

Re: User: hive is not allowed to impersonate anonymous

Rising Star

@Kuldeep Kulkarni Thank you. This solved that error but I get different error now. I get error Main class [org.apache.oozie.action.hadoop.HiveMain], exit code [12] Do you have any idea how to fix this? I already add

<job-xml>$path/hive-site.xml</job-xml> in my hive-site.xml

Re: User: hive is not allowed to impersonate anonymous

Super Guru
@hoda moradi

Can you please check oozie launcher logs? It should give you more hint.

Please check below link:

https://community.hortonworks.com/articles/9148/troubleshooting-an-oozie-flow.html

Highlighted

Re: User: hive is not allowed to impersonate anonymous

Contributor

hi @hoda moradi I had this same problem. This problem went aways when I added the mysql-connector-java.jar library into the lib directory located inside the oozie project root directory where the job.properties and workflow.xml files are located.

Highlighted

Re: User: hive is not allowed to impersonate anonymous

Rising Star

I solved it by coping all the jar file in /usr/hdp/2.3.2.0-2950/atlas/hook/hive/* directory into lib folder at job.properties level.