You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sentry.apache.org by Vivek Shrivastava <vi...@gmail.com> on 2015/03/10 07:33:37 UTC

Unable to run latest Sentry build with Hive 1.1.0

Hi,

When I run the beeline command I get this error message. Do I have pass the
value through command line? if so then what is the value?

Thanks,

Vivek

2015-03-10 06:18:30,157 ERROR [pool-7-thread-1]: thrift.ProcessFunction
(ProcessFunction.java:process(41)) - Internal error processing OpenSession

java.lang.NoSuchFieldError: HIVE_AUTHORIZATION_TASK_FACTORY

        at
org.apache.sentry.binding.hive.HiveAuthzBindingSessionHook.<clinit>(HiveAuthzBindingSessionHook.java:46)

        at java.lang.Class.forName0(Native Method)

        at java.lang.Class.forName(Class.java:274)

        at
org.apache.hadoop.hive.ql.hooks.HookUtils.getHooks(HookUtils.java:59)

        at
org.apache.hive.service.cli.session.SessionManager.executeSessionHooks(SessionManager.java:223)

        at
org.apache.hive.service.cli.session.SessionManager.openSession(SessionManager.java:136)

        at
org.apache.hive.service.cli.CLIService.openSession(CLIService.java:153)

        at
org.apache.hive.service.cli.thrift.ThriftCLIService.getSessionHandle(ThriftCLIService.java:268)

        at
org.apache.hive.service.cli.thrift.ThriftCLIService.OpenSession(ThriftCLIService.java:191)

        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.HadoopThriftAuthBridge20S$Server$TUGIAssumingProcessor.process(HadoopThriftAuthBridge20S.java:628)

        at
org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:206)

        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)

Re: Unable to run latest Sentry build with Hive 1.1.0

Posted by Vivek Shrivastava <vi...@gmail.com>.
For future readers. The exception has been resolved too. It was using an id
not authorized in the users allowed to connect. I have successfully
integrated latest hive with latest sentry trunk code.

On Tue, Mar 10, 2015 at 6:03 AM, Vivek Shrivastava <vivshrivastava@gmail.com
> wrote:

> Hi Xiaomeng,
>
> I noticed that the key was available in the hive trunk as well as apache
> hive 1.1.0 release. I realized that the hiveserver2 was taking the old hive
> 13.1 jars and causing the problem. I am building 1.5.0-incubating-SNAPSHOT on
> my own and built it successfully to and trying to integrate with latest
> Apache Hive. As Prasad has mentioned to me yesterday, latest release of
> Sentry and Apache hive should work.
>
> If you could help, I have a few questions:
>
> 1. Can I configure any Apache Hive release like 13.1 or latest hive trunk
> to use the old file based sentry-provider.ini ( I think it was the way in
> Sentry 1.2 ) instead of using as Latest hive 1.5 service?
>
> 2. I see that metastore message
>
> 15/03/10 09:32:33 WARN conf.HiveConf: HiveConf of name
> hive.sentry.conf.url does not exist
>
> 15/03/10 09:32:33 WARN conf.HiveConf: HiveConf of name hive.server2.enable.
> impersonation does not exist
>
> The properties are there in hive-site.xml then why is this message coming?
>
>
> 3. This is the content of sentry related configuration is hive-site.xml
>
> <property> <name>hive.server2.enable.impersonation</name> <description>Enable
> user impersonation for HiveServer2</description> <value>true</value>
> </property><property> <name> sentry.hive.provider.backend </name> <value>
> org.apache.sentry.provider.file.SimpleFileProviderBackend </value>
> <description> The privilege provider to be used
>
> (either file-based or db-based). </description> </property>
>
> <property> <name>hive.sentry.conf.url</name> <value>
> file:///etc/sentry/conf/sentry-site.xml</value> </property>
>
> <property> <name>hive.metastore.pre.event.listeners</name> <value>
> org.apache.sentry.binding.metastore.MetastoreAuthzBinding</value>
> </property>
>
> <property> <name>hive.metastore.event.listeners</name> <value>
> org.apache.sentry.binding.metastore.SentryMetastorePostEventListener
> </value> </property>
>
> <property> <name>hive.server2.session.hook</name> <value>
> org.apache.sentry.binding.hive.HiveAuthzBindingSessionHook</value>
> </property>
>
> <property> <name>hive.security.authorization.task.factory</name> <value>
> org.apache.sentry.binding.hive.SentryHiveAuthorizationTaskFactoryImpl
> </value> </property>
>
> <property> <name>hive.server2.enable.doAs</name> <value>false</value>
> </property>
>
>
> 4. I am getting this error while running "show databases" or any command
> in beeline.
>
>
> 2015-03-10 09:59:16,173 WARN  [HiveServer2-Handler-Pool: Thread-21]:
> conf.HiveAuthzConf (HiveAuthzConf.java:get(206)) - Using the deprecated
> config setting hive.sentry.server instead of sentry.hive.server
>
> 2015-03-10 09:59:16,174 WARN  [HiveServer2-Handler-Pool: Thread-21]:
> conf.HiveAuthzConf (HiveAuthzConf.java:get(206)) - Using the deprecated
> config setting hive.sentry.provider instead of sentry.provider
>
> 2015-03-10 09:59:16,229 ERROR [HiveServer2-Handler-Pool: Thread-21]:
> ql.Driver (SessionState.java:printError(861)) - FAILED:
> InvocationTargetException null
>
> java.lang.reflect.InvocationTargetException
>
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
>
>         at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
>
>         at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>
>         at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
>
>         at
> org.apache.sentry.binding.hive.authz.HiveAuthzBinding.getAuthProvider(HiveAuthzBinding.java:205)
>
>         at
> org.apache.sentry.binding.hive.authz.HiveAuthzBinding.<init>(HiveAuthzBinding.java:87)
>
>         at
> org.apache.sentry.binding.hive.authz.HiveAuthzBinding.<init>(HiveAuthzBinding.java:79)
>
>         at
> org.apache.sentry.binding.hive.HiveAuthzBindingHook.<init>(HiveAuthzBindingHook.java:97)
>
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
>
>         at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
>
>         at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>
>         at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
>
>         at java.lang.Class.newInstance(Class.java:379)
>
>         at
> org.apache.hadoop.hive.ql.hooks.HookUtils.getHooks(HookUtils.java:60)
>
>         at org.apache.hadoop.hive.ql.Driver.getHooks(Driver.java:1297)
>
>         at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:407)
>
>         at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:307)
>
>         at
> org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:1112)
>
>         at
> org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:1106)
>
>         at
> org.apache.hive.service.cli.operation.SQLOperation.prepare(SQLOperation.java:101)
>
>         at
> org.apache.hive.service.cli.operation.SQLOperation.runInternal(SQLOperation.java:172)
>
>         at
> org.apache.hive.service.cli.operation.Operation.run(Operation.java:257)
>
>         at
> org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementInternal(HiveSessionImpl.java:379
> )
>
>         at
> org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementAsync(HiveSessionImpl.java:366)
>
>         at
> org.apache.hive.service.cli.CLIService.executeStatementAsync(CLIService.java:271)
>
>         at
> org.apache.hive.service.cli.thrift.ThriftCLIService.ExecuteStatement(ThriftCLIService.java:415)
>
>         at
> org.apache.hive.service.cli.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1313)
>
>         at
> org.apache.hive.service.cli.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1298)
>
>         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.reflect.UndeclaredThrowableException
>
>         at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1563)
>
>         at
> org.apache.sentry.provider.db.service.thrift.SentryPolicyServiceClientDefaultImpl$UgiSaslClientTransport.open(SentryPolicyServiceClientDefaultImpl.java:104)
>
>         at
> org.apache.sentry.provider.db.service.thrift.SentryPolicyServiceClientDefaultImpl.<init>(SentryPolicyServiceClientDefaultImpl.java:156)
>
>         at
> org.apache.sentry.service.thrift.SentryServiceClientFactory.create(SentryServiceClientFactory.java:42)
>
>         at
> org.apache.sentry.provider.db.SimpleDBProviderBackend.<init>(SimpleDBProviderBackend.java:53)
>
>         at
> org.apache.sentry.provider.db.SimpleDBProviderBackend.<init>(SimpleDBProviderBackend.java:49)
>
>         ... 35 more
>
> Caused by: org.apache.thrift.transport.TTransportException: Peer indicated
> failure: Problem with callback handler
>
>         at
> org.apache.thrift.transport.TSaslTransport.receiveSaslMessage(TSaslTransport.java:199)
>
>         at
> org.apache.thrift.transport.TSaslTransport.open(TSaslTransport.java:307)
>
>         at
> org.apache.thrift.transport.TSaslClientTransport.open(TSaslClientTransport.java:37)
>
>         at
> org.apache.sentry.provider.db.service.thrift.SentryPolicyServiceClientDefaultImpl$UgiSaslClientTransport.baseOpen(SentryPolicyServiceClientDefaultImpl.java:120)
>
>         at
> org.apache.sentry.provider.db.service.thrift.SentryPolicyServiceClientDefaultImpl$UgiSaslClientTransport.access$000(SentryPolicyServiceClientDefaultImpl.java:79)
>
>         at
> org.apache.sentry.provider.db.service.thrift.SentryPolicyServiceClientDefaultImpl$UgiSaslClientTransport$1.run(SentryPolicyServiceClientDefaultImpl.java:106)
>
>         at
> org.apache.sentry.provider.db.service.thrift.SentryPolicyServiceClientDefaultImpl$UgiSaslClientTransport$1.run(SentryPolicyServiceClientDefaultImpl.java:104)
>
>         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:1548)
>
>         ... 40 more
>
>
> 2015-03-10 09:59:16,229 INFO  [HiveServer2-Handler-Pool: Thread-21]:
> log.PerfLogger (PerfLogger.java:PerfLogEnd(148)) - </PERFLOG method=compile
> start=1425981555715 end=1425981556229 duration=514
> from=org.apache.hadoop.hive.ql.Driver>
>
> 2015-03-10 09:59:16,229 INFO  [HiveServer2-Handler-Pool: Thread-21]:
> log.PerfLogger (PerfLogger.java:PerfLogBegin(121)) - <PERFLOG
> method=releaseLocks from=org.apache.hadoop.hive.ql.Driver>
>
>
>
>
> On Tue, Mar 10, 2015 at 3:02 AM, Huang, Xiaomeng <xiaomeng.huang@intel.com
> > wrote:
>
>> Hi Vivek,
>> Did you set value "
>> org.apache.sentry.binding.hive.SentryHiveAuthorizationTaskFactoryImpl " for
>> the key "hive.security.authorization.task.factory" in hive conf?
>> If not, you should set this conf to use sentry task.
>> And what’s your version of sentry?
>> As far as I know, there is no release version of sentry to support apache
>> hive.
>> Current code base 1.5.0-incubating-SNAPSHOT in trunk could support apache
>> hive, but you may need to build it by yourself.
>>
>> Thanks,
>> Xiaomeng
>>
>>
>> -----Original Message-----
>> From: Vivek Shrivastava [mailto:vivshrivastava@gmail.com]
>> Sent: Tuesday, March 10, 2015 2:52 PM
>> To: dev
>> Subject: Re: Unable to run latest Sentry build with Hive 1.1.0
>>
>> Ah.. never mind. I see this is defined in the hive trunk.
>>
>> On Tue, Mar 10, 2015 at 2:33 AM, Vivek Shrivastava <
>> vivshrivastava@gmail.com
>> > wrote:
>>
>> > Hi,
>> >
>> > When I run the beeline command I get this error message. Do I have
>> > pass the value through command line? if so then what is the value?
>> >
>> > Thanks,
>> >
>> > Vivek
>> >
>> > 2015-03-10 06:18:30,157 ERROR [pool-7-thread-1]:
>> > thrift.ProcessFunction
>> > (ProcessFunction.java:process(41)) - Internal error processing
>> > OpenSession
>> >
>> > java.lang.NoSuchFieldError: HIVE_AUTHORIZATION_TASK_FACTORY
>> >
>> >         at
>> > org.apache.sentry.binding.hive.HiveAuthzBindingSessionHook.<clinit>(Hi
>> > veAuthzBindingSessionHook.java:46)
>> >
>> >         at java.lang.Class.forName0(Native Method)
>> >
>> >         at java.lang.Class.forName(Class.java:274)
>> >
>> >         at
>> > org.apache.hadoop.hive.ql.hooks.HookUtils.getHooks(HookUtils.java:59)
>> >
>> >         at
>> > org.apache.hive.service.cli.session.SessionManager.executeSessionHooks
>> > (SessionManager.java:223)
>> >
>> >         at
>> > org.apache.hive.service.cli.session.SessionManager.openSession(Session
>> > Manager.java:136)
>> >
>> >         at
>> > org.apache.hive.service.cli.CLIService.openSession(CLIService.java:153
>> > )
>> >
>> >         at
>> > org.apache.hive.service.cli.thrift.ThriftCLIService.getSessionHandle(T
>> > hriftCLIService.java:268)
>> >
>> >         at
>> > org.apache.hive.service.cli.thrift.ThriftCLIService.OpenSession(Thrift
>> > CLIService.java:191)
>> >
>> >         at
>> > org.apache.hive.service.cli.thrift.TCLIService$Processor$OpenSession.g
>> > etResult(TCLIService.java:1253)
>> >
>> >         at
>> > org.apache.hive.service.cli.thrift.TCLIService$Processor$OpenSession.g
>> > etResult(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.HadoopThriftAuthBridge20S$Server$TUGIAss
>> > umingProcessor.process(HadoopThriftAuthBridge20S.java:628)
>> >
>> >         at
>> > org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPo
>> > olServer.java:206)
>> >
>> >         at
>> > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.j
>> > ava:1145)
>> >
>> >         at
>> > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.
>> > java:615)
>> >
>> >         at java.lang.Thread.run(Thread.java:745)
>> >
>>
>
>

Re: Unable to run latest Sentry build with Hive 1.1.0

Posted by Vivek Shrivastava <vi...@gmail.com>.
Hi Xiaomeng,

I noticed that the key was available in the hive trunk as well as apache
hive 1.1.0 release. I realized that the hiveserver2 was taking the old hive
13.1 jars and causing the problem. I am building 1.5.0-incubating-SNAPSHOT on
my own and built it successfully to and trying to integrate with latest
Apache Hive. As Prasad has mentioned to me yesterday, latest release of
Sentry and Apache hive should work.

If you could help, I have a few questions:

1. Can I configure any Apache Hive release like 13.1 or latest hive trunk
to use the old file based sentry-provider.ini ( I think it was the way in
Sentry 1.2 ) instead of using as Latest hive 1.5 service?

2. I see that metastore message

15/03/10 09:32:33 WARN conf.HiveConf: HiveConf of name hive.sentry.conf.url
does not exist

15/03/10 09:32:33 WARN conf.HiveConf: HiveConf of name hive.server2.enable.
impersonation does not exist

The properties are there in hive-site.xml then why is this message coming?


3. This is the content of sentry related configuration is hive-site.xml

<property> <name>hive.server2.enable.impersonation</name> <description>Enable
user impersonation for HiveServer2</description> <value>true</value>
</property><property> <name> sentry.hive.provider.backend </name> <value>
org.apache.sentry.provider.file.SimpleFileProviderBackend </value>
<description> The privilege provider to be used

(either file-based or db-based). </description> </property>

<property> <name>hive.sentry.conf.url</name> <value>
file:///etc/sentry/conf/sentry-site.xml</value> </property>

<property> <name>hive.metastore.pre.event.listeners</name> <value>
org.apache.sentry.binding.metastore.MetastoreAuthzBinding</value>
</property>

<property> <name>hive.metastore.event.listeners</name> <value>
org.apache.sentry.binding.metastore.SentryMetastorePostEventListener</value>
</property>

<property> <name>hive.server2.session.hook</name> <value>
org.apache.sentry.binding.hive.HiveAuthzBindingSessionHook</value>
</property>

<property> <name>hive.security.authorization.task.factory</name> <value>
org.apache.sentry.binding.hive.SentryHiveAuthorizationTaskFactoryImpl
</value> </property>

<property> <name>hive.server2.enable.doAs</name> <value>false</value>
</property>


4. I am getting this error while running "show databases" or any command in
beeline.


2015-03-10 09:59:16,173 WARN  [HiveServer2-Handler-Pool: Thread-21]:
conf.HiveAuthzConf (HiveAuthzConf.java:get(206)) - Using the deprecated
config setting hive.sentry.server instead of sentry.hive.server

2015-03-10 09:59:16,174 WARN  [HiveServer2-Handler-Pool: Thread-21]:
conf.HiveAuthzConf (HiveAuthzConf.java:get(206)) - Using the deprecated
config setting hive.sentry.provider instead of sentry.provider

2015-03-10 09:59:16,229 ERROR [HiveServer2-Handler-Pool: Thread-21]:
ql.Driver (SessionState.java:printError(861)) - FAILED:
InvocationTargetException null

java.lang.reflect.InvocationTargetException

        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)

        at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)

        at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)

        at
org.apache.sentry.binding.hive.authz.HiveAuthzBinding.getAuthProvider(HiveAuthzBinding.java:205)

        at
org.apache.sentry.binding.hive.authz.HiveAuthzBinding.<init>(HiveAuthzBinding.java:87)

        at
org.apache.sentry.binding.hive.authz.HiveAuthzBinding.<init>(HiveAuthzBinding.java:79)

        at
org.apache.sentry.binding.hive.HiveAuthzBindingHook.<init>(HiveAuthzBindingHook.java:97)

        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)

        at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)

        at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)

        at java.lang.Class.newInstance(Class.java:379)

        at
org.apache.hadoop.hive.ql.hooks.HookUtils.getHooks(HookUtils.java:60)

        at org.apache.hadoop.hive.ql.Driver.getHooks(Driver.java:1297)

        at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:407)

        at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:307)

        at
org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:1112)

        at
org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:1106)

        at
org.apache.hive.service.cli.operation.SQLOperation.prepare(SQLOperation.java:101)

        at
org.apache.hive.service.cli.operation.SQLOperation.runInternal(SQLOperation.java:172)

        at
org.apache.hive.service.cli.operation.Operation.run(Operation.java:257)

        at
org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementInternal(HiveSessionImpl.java:379
)

        at
org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementAsync(HiveSessionImpl.java:366)

        at
org.apache.hive.service.cli.CLIService.executeStatementAsync(CLIService.java:271)

        at
org.apache.hive.service.cli.thrift.ThriftCLIService.ExecuteStatement(ThriftCLIService.java:415)

        at
org.apache.hive.service.cli.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1313)

        at
org.apache.hive.service.cli.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1298)

        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.reflect.UndeclaredThrowableException

        at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1563)

        at
org.apache.sentry.provider.db.service.thrift.SentryPolicyServiceClientDefaultImpl$UgiSaslClientTransport.open(SentryPolicyServiceClientDefaultImpl.java:104)

        at
org.apache.sentry.provider.db.service.thrift.SentryPolicyServiceClientDefaultImpl.<init>(SentryPolicyServiceClientDefaultImpl.java:156)

        at
org.apache.sentry.service.thrift.SentryServiceClientFactory.create(SentryServiceClientFactory.java:42)

        at
org.apache.sentry.provider.db.SimpleDBProviderBackend.<init>(SimpleDBProviderBackend.java:53)

        at
org.apache.sentry.provider.db.SimpleDBProviderBackend.<init>(SimpleDBProviderBackend.java:49)

        ... 35 more

Caused by: org.apache.thrift.transport.TTransportException: Peer indicated
failure: Problem with callback handler

        at
org.apache.thrift.transport.TSaslTransport.receiveSaslMessage(TSaslTransport.java:199)

        at
org.apache.thrift.transport.TSaslTransport.open(TSaslTransport.java:307)

        at
org.apache.thrift.transport.TSaslClientTransport.open(TSaslClientTransport.java:37)

        at
org.apache.sentry.provider.db.service.thrift.SentryPolicyServiceClientDefaultImpl$UgiSaslClientTransport.baseOpen(SentryPolicyServiceClientDefaultImpl.java:120)

        at
org.apache.sentry.provider.db.service.thrift.SentryPolicyServiceClientDefaultImpl$UgiSaslClientTransport.access$000(SentryPolicyServiceClientDefaultImpl.java:79)

        at
org.apache.sentry.provider.db.service.thrift.SentryPolicyServiceClientDefaultImpl$UgiSaslClientTransport$1.run(SentryPolicyServiceClientDefaultImpl.java:106)

        at
org.apache.sentry.provider.db.service.thrift.SentryPolicyServiceClientDefaultImpl$UgiSaslClientTransport$1.run(SentryPolicyServiceClientDefaultImpl.java:104)

        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:1548)

        ... 40 more


2015-03-10 09:59:16,229 INFO  [HiveServer2-Handler-Pool: Thread-21]:
log.PerfLogger (PerfLogger.java:PerfLogEnd(148)) - </PERFLOG method=compile
start=1425981555715 end=1425981556229 duration=514
from=org.apache.hadoop.hive.ql.Driver>

2015-03-10 09:59:16,229 INFO  [HiveServer2-Handler-Pool: Thread-21]:
log.PerfLogger (PerfLogger.java:PerfLogBegin(121)) - <PERFLOG
method=releaseLocks from=org.apache.hadoop.hive.ql.Driver>




On Tue, Mar 10, 2015 at 3:02 AM, Huang, Xiaomeng <xi...@intel.com>
wrote:

> Hi Vivek,
> Did you set value "
> org.apache.sentry.binding.hive.SentryHiveAuthorizationTaskFactoryImpl " for
> the key "hive.security.authorization.task.factory" in hive conf?
> If not, you should set this conf to use sentry task.
> And what’s your version of sentry?
> As far as I know, there is no release version of sentry to support apache
> hive.
> Current code base 1.5.0-incubating-SNAPSHOT in trunk could support apache
> hive, but you may need to build it by yourself.
>
> Thanks,
> Xiaomeng
>
>
> -----Original Message-----
> From: Vivek Shrivastava [mailto:vivshrivastava@gmail.com]
> Sent: Tuesday, March 10, 2015 2:52 PM
> To: dev
> Subject: Re: Unable to run latest Sentry build with Hive 1.1.0
>
> Ah.. never mind. I see this is defined in the hive trunk.
>
> On Tue, Mar 10, 2015 at 2:33 AM, Vivek Shrivastava <
> vivshrivastava@gmail.com
> > wrote:
>
> > Hi,
> >
> > When I run the beeline command I get this error message. Do I have
> > pass the value through command line? if so then what is the value?
> >
> > Thanks,
> >
> > Vivek
> >
> > 2015-03-10 06:18:30,157 ERROR [pool-7-thread-1]:
> > thrift.ProcessFunction
> > (ProcessFunction.java:process(41)) - Internal error processing
> > OpenSession
> >
> > java.lang.NoSuchFieldError: HIVE_AUTHORIZATION_TASK_FACTORY
> >
> >         at
> > org.apache.sentry.binding.hive.HiveAuthzBindingSessionHook.<clinit>(Hi
> > veAuthzBindingSessionHook.java:46)
> >
> >         at java.lang.Class.forName0(Native Method)
> >
> >         at java.lang.Class.forName(Class.java:274)
> >
> >         at
> > org.apache.hadoop.hive.ql.hooks.HookUtils.getHooks(HookUtils.java:59)
> >
> >         at
> > org.apache.hive.service.cli.session.SessionManager.executeSessionHooks
> > (SessionManager.java:223)
> >
> >         at
> > org.apache.hive.service.cli.session.SessionManager.openSession(Session
> > Manager.java:136)
> >
> >         at
> > org.apache.hive.service.cli.CLIService.openSession(CLIService.java:153
> > )
> >
> >         at
> > org.apache.hive.service.cli.thrift.ThriftCLIService.getSessionHandle(T
> > hriftCLIService.java:268)
> >
> >         at
> > org.apache.hive.service.cli.thrift.ThriftCLIService.OpenSession(Thrift
> > CLIService.java:191)
> >
> >         at
> > org.apache.hive.service.cli.thrift.TCLIService$Processor$OpenSession.g
> > etResult(TCLIService.java:1253)
> >
> >         at
> > org.apache.hive.service.cli.thrift.TCLIService$Processor$OpenSession.g
> > etResult(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.HadoopThriftAuthBridge20S$Server$TUGIAss
> > umingProcessor.process(HadoopThriftAuthBridge20S.java:628)
> >
> >         at
> > org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPo
> > olServer.java:206)
> >
> >         at
> > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.j
> > ava:1145)
> >
> >         at
> > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.
> > java:615)
> >
> >         at java.lang.Thread.run(Thread.java:745)
> >
>

RE: Unable to run latest Sentry build with Hive 1.1.0

Posted by "Huang, Xiaomeng" <xi...@intel.com>.
Hi Vivek,
Did you set value " org.apache.sentry.binding.hive.SentryHiveAuthorizationTaskFactoryImpl " for the key "hive.security.authorization.task.factory" in hive conf?
If not, you should set this conf to use sentry task.
And what’s your version of sentry?
As far as I know, there is no release version of sentry to support apache hive.
Current code base 1.5.0-incubating-SNAPSHOT in trunk could support apache hive, but you may need to build it by yourself.

Thanks,
Xiaomeng


-----Original Message-----
From: Vivek Shrivastava [mailto:vivshrivastava@gmail.com] 
Sent: Tuesday, March 10, 2015 2:52 PM
To: dev
Subject: Re: Unable to run latest Sentry build with Hive 1.1.0

Ah.. never mind. I see this is defined in the hive trunk.

On Tue, Mar 10, 2015 at 2:33 AM, Vivek Shrivastava <vivshrivastava@gmail.com
> wrote:

> Hi,
>
> When I run the beeline command I get this error message. Do I have 
> pass the value through command line? if so then what is the value?
>
> Thanks,
>
> Vivek
>
> 2015-03-10 06:18:30,157 ERROR [pool-7-thread-1]: 
> thrift.ProcessFunction
> (ProcessFunction.java:process(41)) - Internal error processing 
> OpenSession
>
> java.lang.NoSuchFieldError: HIVE_AUTHORIZATION_TASK_FACTORY
>
>         at
> org.apache.sentry.binding.hive.HiveAuthzBindingSessionHook.<clinit>(Hi
> veAuthzBindingSessionHook.java:46)
>
>         at java.lang.Class.forName0(Native Method)
>
>         at java.lang.Class.forName(Class.java:274)
>
>         at
> org.apache.hadoop.hive.ql.hooks.HookUtils.getHooks(HookUtils.java:59)
>
>         at
> org.apache.hive.service.cli.session.SessionManager.executeSessionHooks
> (SessionManager.java:223)
>
>         at
> org.apache.hive.service.cli.session.SessionManager.openSession(Session
> Manager.java:136)
>
>         at
> org.apache.hive.service.cli.CLIService.openSession(CLIService.java:153
> )
>
>         at
> org.apache.hive.service.cli.thrift.ThriftCLIService.getSessionHandle(T
> hriftCLIService.java:268)
>
>         at
> org.apache.hive.service.cli.thrift.ThriftCLIService.OpenSession(Thrift
> CLIService.java:191)
>
>         at
> org.apache.hive.service.cli.thrift.TCLIService$Processor$OpenSession.g
> etResult(TCLIService.java:1253)
>
>         at
> org.apache.hive.service.cli.thrift.TCLIService$Processor$OpenSession.g
> etResult(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.HadoopThriftAuthBridge20S$Server$TUGIAss
> umingProcessor.process(HadoopThriftAuthBridge20S.java:628)
>
>         at
> org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPo
> olServer.java:206)
>
>         at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.j
> ava:1145)
>
>         at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.
> java:615)
>
>         at java.lang.Thread.run(Thread.java:745)
>

Re: Unable to run latest Sentry build with Hive 1.1.0

Posted by Vivek Shrivastava <vi...@gmail.com>.
Ah.. never mind. I see this is defined in the hive trunk.

On Tue, Mar 10, 2015 at 2:33 AM, Vivek Shrivastava <vivshrivastava@gmail.com
> wrote:

> Hi,
>
> When I run the beeline command I get this error message. Do I have pass
> the value through command line? if so then what is the value?
>
> Thanks,
>
> Vivek
>
> 2015-03-10 06:18:30,157 ERROR [pool-7-thread-1]: thrift.ProcessFunction
> (ProcessFunction.java:process(41)) - Internal error processing OpenSession
>
> java.lang.NoSuchFieldError: HIVE_AUTHORIZATION_TASK_FACTORY
>
>         at
> org.apache.sentry.binding.hive.HiveAuthzBindingSessionHook.<clinit>(HiveAuthzBindingSessionHook.java:46)
>
>         at java.lang.Class.forName0(Native Method)
>
>         at java.lang.Class.forName(Class.java:274)
>
>         at
> org.apache.hadoop.hive.ql.hooks.HookUtils.getHooks(HookUtils.java:59)
>
>         at
> org.apache.hive.service.cli.session.SessionManager.executeSessionHooks(SessionManager.java:223)
>
>         at
> org.apache.hive.service.cli.session.SessionManager.openSession(SessionManager.java:136)
>
>         at
> org.apache.hive.service.cli.CLIService.openSession(CLIService.java:153)
>
>         at
> org.apache.hive.service.cli.thrift.ThriftCLIService.getSessionHandle(ThriftCLIService.java:268)
>
>         at
> org.apache.hive.service.cli.thrift.ThriftCLIService.OpenSession(ThriftCLIService.java:191)
>
>         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.HadoopThriftAuthBridge20S$Server$TUGIAssumingProcessor.process(HadoopThriftAuthBridge20S.java:628)
>
>         at
> org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:206)
>
>         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)
>