You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Ted Yu (JIRA)" <ji...@apache.org> on 2014/09/20 00:50:33 UTC
[jira] [Created] (HBASE-12033) SecurityUtil#doAsLoginUser is absent
in hadoop-1, making AccessController#postCreateTableHandler() ineffective
Ted Yu created HBASE-12033:
------------------------------
Summary: SecurityUtil#doAsLoginUser is absent in hadoop-1, making AccessController#postCreateTableHandler() ineffective
Key: HBASE-12033
URL: https://issues.apache.org/jira/browse/HBASE-12033
Project: HBase
Issue Type: Bug
Affects Versions: 0.98.6
Reporter: Ted Yu
Assignee: Ted Yu
Fix For: 0.98.7
>From https://builds.apache.org/job/HBase-0.98-on-Hadoop-1.1/497/testReport/junit/org.apache.hadoop.hbase.security.access/TestAccessController/testSplit/ :
{code}
2014-09-16 22:47:05,526 ERROR [MASTER_TABLE_OPERATIONS-asf911:60077-0] handler.CreateTableHandler(180): Error trying to create the table testSplit
java.io.IOException: java.lang.IllegalArgumentException: Can't find method doAsLoginUser in org.apache.hadoop.security.SecurityUtil!
at org.apache.hadoop.hbase.security.User.runAsLoginUser(User.java:182)
at org.apache.hadoop.hbase.security.access.AccessController.postCreateTableHandler(AccessController.java:917)
at org.apache.hadoop.hbase.master.MasterCoprocessorHost$10.call(MasterCoprocessorHost.java:183)
at org.apache.hadoop.hbase.master.MasterCoprocessorHost.execOperation(MasterCoprocessorHost.java:801)
at org.apache.hadoop.hbase.master.MasterCoprocessorHost.postCreateTableHandler(MasterCoprocessorHost.java:179)
at org.apache.hadoop.hbase.master.handler.CreateTableHandler$1.run(CreateTableHandler.java:174)
at org.apache.hadoop.hbase.master.handler.CreateTableHandler$1.run(CreateTableHandler.java:171)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:396)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
at org.apache.hadoop.hbase.security.User$SecureHadoopUser.runAs(User.java:287)
at org.apache.hadoop.hbase.master.handler.CreateTableHandler.process(CreateTableHandler.java:171)
at org.apache.hadoop.hbase.executor.EventHandler.run(EventHandler.java:128)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.IllegalArgumentException: Can't find method doAsLoginUser in org.apache.hadoop.security.SecurityUtil!
at org.apache.hadoop.hbase.util.Methods.call(Methods.java:45)
at org.apache.hadoop.hbase.security.User.runAsLoginUser(User.java:180)
... 15 more
Caused by: java.lang.NoSuchMethodException: org.apache.hadoop.security.SecurityUtil.doAsLoginUser(java.security.PrivilegedExceptionAction)
at java.lang.Class.getMethod(Class.java:1607)
at org.apache.hadoop.hbase.util.Methods.call(Methods.java:38)
... 16 more
{code}
We can bring the code from SecurityUtil#doAsLoginUser into hbase codebase.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)