[
https://issues.apache.org/jira/browse/HBASE-12903?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Weichen Ye updated HBASE-12903:
-------------------------------
Description:
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>
was:
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>
> Wrong Configuration in doc 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
>
> 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)