Home | About | Sematext search-lucene.com search-hadoop.com
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB
 Search Hadoop and all its subprojects:

Switch to Threaded View
HBase >> mail # dev >> Exception in TableInfo check


Copy link to this message
-
Re: Exception in TableInfo check
Ah,

  public static List<Path> getTableDirs(final FileSystem fs, final Path rootdir)
  throws IOException {
    // presumes any directory under hbase.rootdir is a table
    FileStatus [] dirs = fs.listStatus(rootdir, new DirFilter(fs));
    List<Path> tabledirs = new ArrayList<Path>(dirs.length);
    for (FileStatus dir: dirs) {
      Path p = dir.getPath();
      String tableName = p.getName();
      if (tableName.equals(HConstants.HREGION_LOGDIR_NAME) ||
          tableName.equals(Bytes.toString(HConstants.ROOT_TABLE_NAME)) ||
          tableName.equals(Bytes.toString(HConstants.META_TABLE_NAME)) ||
          tableName.equals(HConstants.HREGION_OLDLOGDIR_NAME) ) {
        continue;
      }
      tabledirs.add(p);
    }
    return tabledirs;
  }

This is missing .tmp and .corrupt, and splitlogs and...

Lars

On Jul 5, 2011, at 11:31 AM, Lars George wrote:

> Hi,
>
> I am managing consistently to run into this error:
>
> ==> /var/lib/hbase/logs/hbase-larsgeorge-master-de1-app-mbp-2.log <=> 2011-07-05 11:26:00,758 WARN org.apache.hadoop.hbase.master.HMaster: Failed getting all descriptors
> java.io.FileNotFoundException: No status for hdfs://localhost:8020/hbase/.corrupt
>         at org.apache.hadoop.hbase.util.FSUtils.getTableInfoModtime(FSUtils.java:888)
>         at org.apache.hadoop.hbase.util.FSTableDescriptors.get(FSTableDescriptors.java:122)
>         at org.apache.hadoop.hbase.util.FSTableDescriptors.getAll(FSTableDescriptors.java:149)
>         at org.apache.hadoop.hbase.master.HMaster.getHTableDescriptors(HMaster.java:1429)
>         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.hbase.ipc.WritableRpcEngine$Server.call(WritableRpcEngine.java:312)
>         at org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1065)
>
> Why is the TableInfo check failing on .corrupt? I do have it
>
> drwxr-xr-x   - larsgeorge supergroup          0 2011-07-05 09:29 /hbase/.corrupt
>
> Is this file not skipped and presumed to be a table directory?
>
> Lars
>
> PS: Just as a note, I am posting these things here because I am currently have no time to investigate and fix (if necessary). They seem trivial, but I just cannot deviate from my current assignment. Sorry for being a PITA. :(
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB