Usual Errors encountered when using Hbase:
Error 1: Error on the
hbase shell
Exception in thread "main"
java.lang.NoClassDefFoundError: org/jruby/Main
Caused by: java.lang.ClassNotFoundException:
org.jruby.Main
at
java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at
java.security.AccessController.doPrivileged(Native Method)
at
java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at
java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at
java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: org.jruby.Main.
Program will exit.
Solution:
This is most likely a
version incompatibility issue, which I had encountered when trying to run
hbase-0.9.4 with Hadoop-1.2.0
The same setup of Hadoop was working fine with
hbase-0.94.8
Hence try with some other version of either
Hadoop or HBase
Error 2: Error on the
hbase shell
Exception in thread "main" java.lang.NoClassDefFoundError:
org/apache/hadoop/hbase/zookeeper/ZKServerTool
Caused by: java.lang.ClassNotFoundException:
org.apache.hadoop.hbase.zookeeper.ZKServerTool
at
java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native
Method)
at
java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at
java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at
sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class:
org.apache.hadoop.hbase.zookeeper.ZKServerTool. Program will exit.
Solution: Same as that for Error
1 above
Error 3: Error in the
master logs
ERROR org.apache.hadoop.hbase.master.HMaster: Cannot start
master
Caused by: java.net.ConnectException: Call to
hadoop-4252-nameserver/192.168.41.123:9000 failed on connection exception:
java.net.ConnectException: Connection refused
Solution: When getting the above error, my /etc/hosts file on the
HBase Master node was something like below:
127.0.0.1 hbase-master
localhost.localdomain localhost
::1 hbase-master
localhost6.localdomain6 localhost6
192.168.41.123 hbase-master
192.168.41.123 localhost
192.168.41.123 localhost.localdomain
And to resolve the error, I edited it to be
192.168.41.123 hbase-master
192.168.41.123 localhost
192.168.41.123 localhost.localdomain
After which the above error went away.
Error 4: Error in the
master logs
ERROR org.apache.hadoop.hbase.master.HMasterCommandLine: Failed
to start master
java.lang.RuntimeException: Failed construction of Master: class
org.apache.hadoop.hbase.master.HMaster
at
org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:1105)
at
org.apache.hadoop.hbase.master.HMasterCommandLine.startMaster(HMasterCommandLine.java:142)
at
org.apache.hadoop.hbase.master.HMasterCommandLine.run(HMasterCommandLine.java:102)
at
org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
at
org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:76)
at
org.apache.hadoop.hbase.master.HMaster.main(HMaster.java:1119)
Caused by: java.lang.ClassNotFoundException:
org.apache.commons.configuration.Configuration
at
java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at
java.security.AccessController.doPrivileged(Native Method)
at
java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at
sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at
java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at
org.apache.hadoop.metrics2.lib.DefaultMetricsSystem.(DefaultMetricsSystem.java:37)
at
org.apache.hadoop.metrics2.lib.DefaultMetricsSystem.(DefaultMetricsSystem.java:34)
at
org.apache.hadoop.security.UgiInstrumentation.create(UgiInstrumentation.java:51)
at
org.apache.hadoop.security.UserGroupInformation.initialize(UserGroupInformation.java:216)
at
org.apache.hadoop.security.UserGroupInformation.ensureInitialized(UserGroupInformation.java:184)
at
org.apache.hadoop.security.UserGroupInformation.isSecurityEnabled(UserGroupInformation.java:236)
at org.apache.hadoop.security.KerberosName.(KerberosName.java:79)
at
org.apache.hadoop.security.UserGroupInformation.initialize(UserGroupInformation.java:209)
at
org.apache.hadoop.security.UserGroupInformation.ensureInitialized(UserGroupInformation.java:184)
at
org.apache.hadoop.security.UserGroupInformation.isSecurityEnabled(UserGroupInformation.java:236)
at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at
java.lang.reflect.Method.invoke(Method.java:616)
at
org.apache.hadoop.hbase.util.Methods.call(Methods.java:37)
at org.apache.hadoop.hbase.security.User.call(User.java:457)
at
org.apache.hadoop.hbase.security.User.callStatic(User.java:447)
at
org.apache.hadoop.hbase.security.User.access$200(User.java:49)
at
org.apache.hadoop.hbase.security.User$SecureHadoopUser.isSecurityEnabled(User.java:435)
at
org.apache.hadoop.hbase.security.User$SecureHadoopUser.login(User.java:406)
at
org.apache.hadoop.hbase.security.User.login(User.java:146)
at
org.apache.hadoop.hbase.master.HMaster.(HMaster.java:204)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at
java.lang.reflect.Constructor.newInstance(Constructor.java:532)
at
org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:1100)
... 5 more
Solution: Remove the
commons-configuration-*.jar(if present) from your hbase setup lib folder and
replace with the commons-configuration-*.jar of the hadoop being used.
Error 5: Error in the master logs
java.io.IOException: Call to /10.0.1.37:50070
failed on local exception: java.io.EOFException at org.apache.hadoop.ipc.Client.wrapException(Client.java:1139)
at org.apache.hadoop.ipc.Client.call(Client.java:1107) at
org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:226) ....
Solution: Remove the
hadoop-core-*.jar from your hbase setup lib folder and replace with the
hadoop-core jar of the hadoop being used.
Error 6: Error in the
master logs
FATAL org.apache.hadoop.hbase.master.HMaster:
Unhandled exception. Starting shutdown.
java.lang.IllegalArgumentException:
13955@hbase-masterVMENABLED
at org.apache.hadoop.hbase.zookeeper.ZKTable.getTableState(ZKTable.java:119)
at
org.apache.hadoop.hbase.zookeeper.ZKTable.populateTableStates(ZKTable.java:94)
at
org.apache.hadoop.hbase.zookeeper.ZKTable.(ZKTable.java:79)
at org.apache.hadoop.hbase.master.AssignmentManager.(AssignmentManager.java:171)
at
org.apache.hadoop.hbase.master.HMaster.finishInitialization(HMaster.java:353)
at
org.apache.hadoop.hbase.master.HMaster.run(HMaster.java:281)
2012-11-15 19:03:12,275 INFO org.apache.hadoop.hbase.master.HMaster:
Aborting
.
.
2012-11-15 19:03:12,533 INFO
org.apache.zookeeper.ClientCnxn: EventThread shut down
Solution: Remove the
commons-lang-*.jar from your hbase setup lib folder and replace with the
commons-lang-*.jar of the hadoop being used.
No comments:
Post a Comment