Alexander Kolbasov created SENTRY-1552:
------------------------------------------

             Summary: Granting partial role fails and doesn't report why
                 Key: SENTRY-1552
                 URL: https://issues.apache.org/jira/browse/SENTRY-1552
             Project: Sentry
          Issue Type: Bug
            Reporter: Alexander Kolbasov


I was trying to create a privilege using generic service protocol. The only 
things that were specified were component and service.

The server threw exception:

{code}
2016-11-29 00:58:28,773 (pool-7-thread-9) [ERROR - 
org.apache.sentry.provider.db.service.persistent.TransactionManager.executeTransactionWithRetry(TransactionManager.java:147)]
 The transaction has reached max retry number, will not retry again.
java.lang.RuntimeException: Can not get BitFieldAction for name:
        at 
org.apache.sentry.provider.db.generic.service.persistent.PrivilegeOperatePersistence.getAction(PrivilegeOperatePersistence.java:439)
        at 
org.apache.sentry.provider.db.generic.service.persistent.PrivilegeOperatePersistence.grantRolePartial(PrivilegeOperatePersistence.java:107)
        at 
org.apache.sentry.provider.db.generic.service.persistent.PrivilegeOperatePersistence.grantPrivilege(PrivilegeOperatePersistence.java:97)
        at 
org.apache.sentry.provider.db.generic.service.persistent.DelegateSentryStore$2.execute(DelegateSentryStore.java:155)
        at 
org.apache.sentry.provider.db.service.persistent.TransactionManager.executeTransaction(TransactionManager.java:108)
        at 
org.apache.sentry.provider.db.service.persistent.TransactionManager.executeTransactionWithRetry(TransactionManager.java:138)
        at 
org.apache.sentry.provider.db.generic.service.persistent.DelegateSentryStore.alterRoleGrantPrivilege(DelegateSentryStore.java:142)
        at 
org.apache.sentry.provider.db.generic.service.thrift.SentryGenericPolicyProcessor$5.handle(SentryGenericPolicyProcessor.java:461)
        at 
org.apache.sentry.provider.db.generic.service.thrift.SentryGenericPolicyProcessor.requestHandle(SentryGenericPolicyProcessor.java:197)
        at 
org.apache.sentry.provider.db.generic.service.thrift.SentryGenericPolicyProcessor.alter_sentry_role_grant_privilege(SentryGenericPolicyProcessor.java:457)
        at 
org.apache.sentry.provider.db.generic.service.thrift.SentryGenericPolicyService$Processor$alter_sentry_role_grant_privilege.getResult(SentryGenericPolicyService.java:877)
        at 
org.apache.sentry.provider.db.generic.service.thrift.SentryGenericPolicyService$Processor$alter_sentry_role_grant_privilege.getResult(SentryGenericPolicyService.java:862)
        at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
        at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
        at 
org.apache.sentry.provider.db.generic.service.thrift.SentryGenericPolicyProcessorWrapper.process(SentryGenericPolicyProcessorWrapper.java:37)
        at 
org.apache.thrift.TMultiplexedProcessor.process(TMultiplexedProcessor.java:123)
        at 
org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:286)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
2016-11-29 00:58:28,774 (pool-7-thread-9) [ERROR - 
org.apache.sentry.provider.db.generic.service.thrift.SentryGenericPolicyProcessor.requestHandle(SentryGenericPolicyProcessor.java:220)]
 Unknown error:The transaction has reached max retry number, will not retry 
again.
java.lang.Exception: The transaction has reached max retry number, will not 
retry again.
        at 
org.apache.sentry.provider.db.service.persistent.TransactionManager.executeTransactionWithRetry(TransactionManager.java:148)
        at 
org.apache.sentry.provider.db.generic.service.persistent.DelegateSentryStore.alterRoleGrantPrivilege(DelegateSentryStore.java:142)
        at 
org.apache.sentry.provider.db.generic.service.thrift.SentryGenericPolicyProcessor$5.handle(SentryGenericPolicyProcessor.java:461)
        at 
org.apache.sentry.provider.db.generic.service.thrift.SentryGenericPolicyProcessor.requestHandle(SentryGenericPolicyProcessor.java:197)
        at 
org.apache.sentry.provider.db.generic.service.thrift.SentryGenericPolicyProcessor.alter_sentry_role_grant_privilege(SentryGenericPolicyProcessor.java:457)
        at 
org.apache.sentry.provider.db.generic.service.thrift.SentryGenericPolicyService$Processor$alter_sentry_role_grant_privilege.getResult(SentryGenericPolicyService.java:877)
        at 
org.apache.sentry.provider.db.generic.service.thrift.SentryGenericPolicyService$Processor$alter_sentry_role_grant_privilege.getResult(SentryGenericPolicyService.java:862)
        at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
        at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
        at 
org.apache.sentry.provider.db.generic.service.thrift.SentryGenericPolicyProcessorWrapper.process(SentryGenericPolicyProcessorWrapper.java:37)
        at 
org.apache.thrift.TMultiplexedProcessor.process(TMultiplexedProcessor.java:123)
        at 
org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:286)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.RuntimeException: Can not get BitFieldAction for name:
        at 
org.apache.sentry.provider.db.generic.service.persistent.PrivilegeOperatePersistence.getAction(PrivilegeOperatePersistence.java:439)
        at 
org.apache.sentry.provider.db.generic.service.persistent.PrivilegeOperatePersistence.grantRolePartial(PrivilegeOperatePersistence.java:107)
        at 
org.apache.sentry.provider.db.generic.service.persistent.PrivilegeOperatePersistence.grantPrivilege(PrivilegeOperatePersistence.java:97)
        at 
org.apache.sentry.provider.db.generic.service.persistent.DelegateSentryStore$2.execute(DelegateSentryStore.java:155)
        at 
org.apache.sentry.provider.db.service.persistent.TransactionManager.executeTransaction(TransactionManager.java:108)
        at 
org.apache.sentry.provider.db.service.persistent.TransactionManager.executeTransactionWithRetry(TransactionManager.java:138)
        ... 14 more
2016-11-29 00:58:28,778 (pool-7-thread-9) [INFO - 
org.apache.sentry.provider.db.generic.service.thrift.SentryGenericPolicyProcessor.alter_sentry_role_grant_privilege(SentryGenericPolicyProcessor.java:475)]
 
{"serviceName":"Sentry-Service","userName":"akolb","impersonator":"","ipAddress":"/127.0.0.1","operation":"GRANT_PRIVILEGE","eventTime":"1480409908778","operationText":"GRANT
  ON TO ROLE r2","allowed":"false","objectType":"PRINCIPAL","component":"kafka"}
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to