Configured HBase with HDFS :- when look up for table getting org.apache.hadoop.hbase.TableNotFoundException

View: New views
2 Messages — Rating Filter:   Alert me  

Configured HBase with HDFS :- when look up for table getting org.apache.hadoop.hbase.TableNotFoundException

by rahul_P :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

I have configured HBase-0.20.0 with Hadoop-0.20.1 and HDFS. I have created one table named 'Employee'. some reason i restarted the Hbase then i executed "list" command to see available table in HBase but it didn't show me the previously created table "Employee". Then i checked with the command $HADOOP_HOME/bin/hadoop dfs -ls /hbase it show me the "Employee" table.

I have writen one java programme wich takes the table row name and displays the value column value.

link for the java proframme

EmployeeImport.java

Facing Problem :- when i ran the above programme i got following exception table not found  but table is available in HBase-HDFS.


********************************Exception***************************************

org.apache.hadoop.hbase.TableNotFoundException: EmployeeName
        at org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegionInMeta(HConnectionManager.java:632)
        at org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:586)
        at org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:549)
        at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:125)
        at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:103)
        at EmployeeImport$InnerMap.configure(EmployeeImport.java:62)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:88)
        at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:64)
        at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
        at org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:34)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:88)
        at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:64)
        at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
        at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:354)
        at org.apache.hadoop.mapred.MapTask.run(MapTask.java:307)
        at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:176)
09/11/04 12:41:40 INFO EmployeeImport: --------------------map called---------------------------
09/11/04 12:41:40 WARN mapred.LocalJobRunner: job_local_0001
java.io.IOException: table is null
        at EmployeeImport$InnerMap.map(EmployeeImport.java:41)
        at EmployeeImport$InnerMap.map(EmployeeImport.java:33)
        at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:50)
        at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:358)
        at org.apache.hadoop.mapred.MapTask.run(MapTask.java:307)
        at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:176)
09/11/04 12:41:40 INFO mapred.JobClient:  map 0% reduce 0%
09/11/04 12:41:40 INFO mapred.JobClient: Job complete: job_local_0001
09/11/04 12:41:40 INFO mapred.JobClient: Counters: 0
Exception in thread "main" java.io.IOException: Job failed!
        at org.apache.hadoop.mapred.JobClient.runJob(JobClient.java:1252)
        at EmployeeImport.run(EmployeeImport.java:103)
        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
        at EmployeeImport.main(EmployeeImport.java:118)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:156)

Re: Configured HBase with HDFS :- when look up for table getting org.apache.hadoop.hbase.TableNotFoundException

by Tatsuya Kawano :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello,

> I have configured HBase-0.20.0 with Hadoop-0.20.1 and HDFS. I have created
> one table named 'Employee'. some reason i restarted the Hbase then i
> executed "list" command to see available table in HBase but it didn't show
> me the previously created table "Employee".

Your problem sounds similar to this:
http://old.nabble.com/None-of-my-tables-are-showing-up-td26062349i20.html

Is seems when you restarted HBase, the contents of .META. table was
not flushed to HDFS by some reason. So HBase can't locate the data
files of your Employee table.


> Then i checked with the command
> $HADOOP_HOME/bin/hadoop dfs -ls /hbase it show me the "Employee" table.

You have a good chance to regenerate Employee table from the data
files. Try "add_table.rb" provided here:
https://issues.apache.org/jira/browse/HBASE-1867


Good luck!

--
Tatsuya Kawano (Mr.)
Tokyo, Japan



On Wed, Nov 4, 2009 at 4:31 PM, rahul_P <sunil0683@...> wrote:

>
> Hi,
>
> I have configured HBase-0.20.0 with Hadoop-0.20.1 and HDFS. I have created
> one table named 'Employee'. some reason i restarted the Hbase then i
> executed "list" command to see available table in HBase but it didn't show
> me the previously created table "Employee". Then i checked with the command
> $HADOOP_HOME/bin/hadoop dfs -ls /hbase it show me the "Employee" table.
>
> I have writen one java programme wich takes the table row name and displays
> the value column value.
>
> link for the java proframme
>
> http://old.nabble.com/file/p26192066/EmployeeImport.java EmployeeImport.java
>
> Facing Problem :- when i ran the above programme i got following exception
> table not found  but table is available in HBase-HDFS.
>
>
> ********************************Exception***************************************
>
> org.apache.hadoop.hbase.TableNotFoundException: EmployeeName
>        at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegionInMeta(HConnectionManager.java:632)
>        at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:586)
>        at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:549)
>        at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:125)
>        at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:103)
>        at EmployeeImport$InnerMap.configure(EmployeeImport.java:62)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
> org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:88)
>        at
> org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:64)
>        at
> org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
>        at org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:34)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
> org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:88)
>        at
> org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:64)
>        at
> org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
>        at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:354)
>        at org.apache.hadoop.mapred.MapTask.run(MapTask.java:307)
>        at
> org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:176)
> 09/11/04 12:41:40 INFO EmployeeImport: --------------------map
> called---------------------------
> 09/11/04 12:41:40 WARN mapred.LocalJobRunner: job_local_0001
> java.io.IOException: table is null
>        at EmployeeImport$InnerMap.map(EmployeeImport.java:41)
>        at EmployeeImport$InnerMap.map(EmployeeImport.java:33)
>        at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:50)
>        at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:358)
>        at org.apache.hadoop.mapred.MapTask.run(MapTask.java:307)
>        at
> org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:176)
> 09/11/04 12:41:40 INFO mapred.JobClient:  map 0% reduce 0%
> 09/11/04 12:41:40 INFO mapred.JobClient: Job complete: job_local_0001
> 09/11/04 12:41:40 INFO mapred.JobClient: Counters: 0
> Exception in thread "main" java.io.IOException: Job failed!
>        at org.apache.hadoop.mapred.JobClient.runJob(JobClient.java:1252)
>        at EmployeeImport.run(EmployeeImport.java:103)
>        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
>        at EmployeeImport.main(EmployeeImport.java:118)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at org.apache.hadoop.util.RunJar.main(RunJar.java:156)
>
> --
> View this message in context: http://old.nabble.com/Configured-HBase-with-HDFS-%3A--when-look-up-for-table-getting-org.apache.hadoop.hbase.TableNotFoundException-tp26192066p26192066.html
> Sent from the HBase User mailing list archive at Nabble.com.