Hello Users,
I ran into the same problem!
For those who wonder why that exception was output (at least in my case):
I had done a 'cut and paste' of the configuration code at
http://rajeev1982.blogspot.com/2009/06/secondary-indexes-in-hbase.html
<property>
<name>hbase.regionserver.class</name>
<value>org.apache.hadoop.hbase.ipc.IndexedRegionInterface</value>
</property>
<property>
<name>hbase.regionserver.impl</name>
<value>
org.apache.hadoop.hbase.regionserver.tableindexed.IndexedRegionServer
</value>
</property>
and in fact the formatting was *poor*: there are spaces (newlines)
between the class name and <value> tags!!!!!
Removing those spaces fixed the issue for me.
So to setup THbase is is just a matter of (server side):
1) Add the following jar to HBASE_CLASSPATH in
$HBASE_HOME/conf/hbase-env.sh and restart hbase.
$HBASE_HOME/contrib/transactional/hbase-0.20.3-transactional.jar 2)
Modify hbase-site.xml with:
---------------------------
<property>
<name>hbase.regionserver.class</name>
<value>org.apache.hadoop.hbase.ipc.IndexedRegionInterface</value>
</property>
<property>
<name>hbase.regionserver.impl</name>
<value>org.apache.hadoop.hbase.regionserver.tableindexed.IndexedRegionServer</value>
</property>
---------------------------
http://github.com/pambrose/HBql/blob/d7aa8e4c7fb9122e163e77bc7d4cc655bd6040f3/src/site/apt/installation.apt
explains that clearly too. Cheers TuX
Bluemetrix Development wrote:
Hi,
Check your steps against these here:
http://rajeev1982.blogspot.com/2009/06/secondary-indexes-in-hbase.html
Thanks
On Tue, Feb 16, 2010 at 4:54 PM, Michael Segel
<michael_se...@hotmail.com> wrote:
Ok, so I posted this to the wrong list. (Hadoop vs HBase) So I apologize for
any duplication...
Here's the skinny.
I've got secondary indexes up and running on our Sandbox machines running
Cloudera's earlier release that had hbase-0.20.0.
We're creating a development cluster using Cloudera's latest release which
includes hbase-0.20.3
So I've gone in and added the two entries in to hbase-site.xml.
Edited hbase-env.sh
To set up the
HBASE_SHELL=/usr/lib/hbase-0.20/contrib/transactional/hbase-0.20.3-1.cloudera-transactional.jar
(rather than just the directory)
When I start hadoop, no problem. When starting hbase with the secondary
indexing. I get the error:
Exception in thread "main" java.lang.RuntimeException:
java.lang.ClassNotFoundException:
org.apache.hadoop.hbase.regionserver.tableindexed.IndexedRegionServer
at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:808)
at
org.apache.hadoop.hbase.regionserver.HRegionServer.main(HRegionServer.java:2496)
Caused by: java.lang.ClassNotFoundException:
org.apache.hadoop.hbase.regionserver.tableindexed.IndexedRegionServer
I've tried this with HBASE_SHELL=/usr/lib/hbase-0.20/contrib/transcational ,
same error.
I've even gone as far to put an echo statement in the hbase-env.sh to echo back
the shell environment's value.
(You can see it from stdout on the name node, plus also in the
hbase-hadoop-regionserver-<machinename>.out log file too.
I know I'm missing something in the configuration.
So what are the obvious things I overlooked?
Also on the sandbox I put a copy of my hdfs-site.xml in my /etc/hbase-0.20/conf
directory. I can't seem to find out in my notes why I did this.
So any suggestions would be greatly appreciated.
Thx
-Mikey
_________________________________________________________________
Hotmail: Trusted email with Microsoft’s powerful SPAM protection.
http://clk.atdmt.com/GBL/go/201469226/direct/01/