Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
HBase, mail # user - Cleaning up after failed table rename


Copy link to this message
-
Re: Cleaning up after failed table rename
Ted Yu 2013-08-03, 02:20
I looked at the tip of 0.92 code base and didn't see matching line
in src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java

    TableInfo tableInfo = tablesInfo.get(tableName);
    Preconditions.checkNotNull("Table " + tableName + "' not present!",
tableInfo);
    HTableDescriptor template = tableInfo.getHTD();

Looks like the NPE came from last line above.

BTW Please upgrade your HBase - 0.92 was quite old.

On Fri, Aug 2, 2013 at 3:31 PM, Patrick Schless
<[EMAIL PROTECTED]>wrote:

> Ran that command. It hung on here:
>
> 13/08/02 17:29:21 INFO util.HBaseFsck: Attempting to handle orphan hdfs
> dir: hdfs://
>
> name-node.sea01.staging.tdb.com:8020/hbase/t1/5539903676fa6143cf0ffbee801c1b2d
> Exception in thread "main" java.lang.NullPointerException
>         at
>
> org.apache.hadoop.hbase.util.HBaseFsck$TableInfo.access$100(HBaseFsck.java:1676)
>         at
> org.apache.hadoop.hbase.util.HBaseFsck.adoptHdfsOrphan(HBaseFsck.java:458)
>         at
> org.apache.hadoop.hbase.util.HBaseFsck.adoptHdfsOrphans(HBaseFsck.java:432)
>         at
>
> org.apache.hadoop.hbase.util.HBaseFsck.restoreHdfsIntegrity(HBaseFsck.java:552)
>         at
>
> org.apache.hadoop.hbase.util.HBaseFsck.offlineHdfsIntegrityRepair(HBaseFsck.java:337)
>         at
> org.apache.hadoop.hbase.util.HBaseFsck.onlineHbck(HBaseFsck.java:410)
>         at org.apache.hadoop.hbase.util.HBaseFsck.exec(HBaseFsck.java:3375)
>         at org.apache.hadoop.hbase.util.HBaseFsck.main(HBaseFsck.java:3205)
>
>
>
> On Fri, Aug 2, 2013 at 11:31 AM, Ted Yu <[EMAIL PROTECTED]> wrote:
>
> > Can you try running:
> >
> > hbck -repair
> >
> > On Fri, Aug 2, 2013 at 9:28 AM, Patrick Schless
> > <[EMAIL PROTECTED]>wrote:
> >
> > > I was testing an hbase table rename script I found in a JIRA, and it
> > didn't
> > > work for me. Not a huge deal (I went with a different solution), but it
> > > left some data I want to clean up.
> > >
> > > I was trying to rename a table from "t1" to "t1.renamed". Now in HBase,
> > > 'list' shows 't1.renamed'. In HDFS, I have both the source and the
> > > destination:
> > > /hbase/t1
> > > /hbase/t1.renamed
> > >
> > > I'd like to clean up both HDFS and HBase, and just get rid of this
> table.
> > > Two questions:
> > > 1) Can I just delete /hbase/t1/ in HDFS?
> > > 2) How do I delete t1.renamed? In HBase, when I try to disable it, I
> get:
> > > ERROR: Table t1.renamed does not exist.'
> > >
> > > I'm running:
> > > CDH4.1.2
> > > HBase 0.92.1
> > > Hadoop 2.0.0
> > >
> > > Thanks,
> > > Patrick
> > >
> >
>