You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Weichen Ye (JIRA)" <ji...@apache.org> on 2015/01/22 12:06:34 UTC
[jira] [Updated] (HBASE-12903) Wrong configuration to enable secure
bulk load
[ https://issues.apache.org/jira/browse/HBASE-12903?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Weichen Ye updated HBASE-12903:
-------------------------------
Summary: Wrong configuration to enable secure bulk load (was: Wrong configuration in doc to enable secure bulk load)
> Wrong configuration to enable secure bulk load
> ----------------------------------------------
>
> Key: HBASE-12903
> URL: https://issues.apache.org/jira/browse/HBASE-12903
> Project: HBase
> Issue Type: Bug
> Components: Coprocessors, documentation
> Affects Versions: 2.0.0, 0.98.6
> Reporter: Weichen Ye
> Assignee: Weichen Ye
> Attachments: HBASE-12903.patch
>
>
> In Section "62.5. Secure Bulk Load", the doc tell us to enable secure bulkload with the configuration:
> <property>
> <name>hbase.coprocessor.regionserver.classes</name>
> <value>org.apache.hadoop.hbase.security.token.TokenProvider,org.apache.hadoop.hbase.security.access.AccessController,
> org.apache.hadoop.hbase.security.access.SecureBulkLoadEndpoint</value>
> </property>
> When we set the configuration like this, the regionserver can not start due to this ERROR:
> 2015-01-22 15:55:46,395 FATAL org.apache.hadoop.hbase.regionserver.HRegionServer: ABORTING region server hadoop-node-xxxxx: The coprocessor org.apache.hadoop.hbase.security.access.SecureBulkLoadEndpoint threw java.lang.ClassCastException: org.apache.hadoop.hbase.regionserver.RegionServerCoprocessorHost$RegionServerEnvironment can not be cast to org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment
> java.lang.ClassCastException: org.apache.hadoop.hbase.regionserver.RegionServerCoprocessorHost$RegionServerEnvironment cannot be cast to org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment
> at org.apache.hadoop.hbase.security.access.SecureBulkLoadEndpoint.start(SecureBulkLoadEndpoint.java:125)
> at org.apache.hadoop.hbase.coprocessor.CoprocessorHost$Environment.startup(CoprocessorHost.java:673)
> at org.apache.hadoop.hbase.coprocessor.CoprocessorHost.loadInstance(CoprocessorHost.java:265)
> at org.apache.hadoop.hbase.coprocessor.CoprocessorHost.loadSystemCoprocessors(CoprocessorHost.java:168)
> at org.apache.hadoop.hbase.regionserver.RegionServerCoprocessorHost.<init>(RegionServerCoprocessorHost.java:46)
> at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:883)
> at java.lang.Thread.run(Thread.java:745)
> In source code org.apache.hadoop.hbase.security.access.SecureBulkLoadEndpoint we can see, the environment for this coprocessor is "RegionCoprocessorEnvironment". So the coprocessor "SecureBulkLoadEndpoint" should be put into "hbase.coprocessor.region.classes", instead of "hbase.coprocessor.regionserver.classes"
> The correct configuration to enable secure bulk load is:
> <property>
> <name>hbase.coprocessor.region.classes</name> <value>org.apache.hadoop.hbase.security.token.TokenProvider,org.apache.hadoop.hbase.security.access.AccessController,
> org.apache.hadoop.hbase.security.access.SecureBulkLoadEndpoint</value>
> </property>
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)