You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Ted Yu (JIRA)" <ji...@apache.org> on 2010/11/24 04:39:13 UTC

[jira] Commented: (HBASE-3271) Allow .META. table to be exported

    [ https://issues.apache.org/jira/browse/HBASE-3271?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12935184#action_12935184 ] 

Ted Yu commented on HBASE-3271:
-------------------------------

I used this code:
    if (keys == null || keys.getFirst() == null || 
        keys.getFirst().length == 0) {
    	HRegionLocation regLoc = table.getRegionLocation(HConstants.EMPTY_BYTE_ARRAY);
    	if (null == regLoc)
    		throw new IOException("Expecting at least one region.");
    	List<InputSplit> splits = new ArrayList<InputSplit>(1); 
    	InputSplit split = new TableSplit(table.getTableName(),
    			HConstants.EMPTY_BYTE_ARRAY, HConstants.EMPTY_BYTE_ARRAY,
    			regLoc.getServerAddress().getHostname());
    	splits.add(split);
    	return splits;
    }

The following command only exports rows in .META. which have 'packageindex' (refer to HBASE-3255):
bin/hbase org.apache.hadoop.hbase.mapreduce.Export .META. h-meta 1 0 0 packageindex

-rwxrwxrwx 1 hadoop users 90700 Nov 24 03:31 h-meta/part-m-00000

> Allow .META. table to be exported
> ---------------------------------
>
>                 Key: HBASE-3271
>                 URL: https://issues.apache.org/jira/browse/HBASE-3271
>             Project: HBase
>          Issue Type: Improvement
>          Components: util
>    Affects Versions: 0.20.6
>            Reporter: Ted Yu
>
> I tried to export .META. table in 0.20.6 and got:
> [hadoop@us01-ciqps1-name01 hbase]$ bin/hbase org.apache.hadoop.hbase.mapreduce.Export .META. h-meta 1 0 0
> 10/11/23 20:59:05 INFO jvm.JvmMetrics: Initializing JVM Metrics with processName=JobTracker, sessionId=
> 2010-11-23 20:59:05.255::INFO:  Logging to STDERR via org.mortbay.log.StdErrLog
> 2010-11-23 20:59:05.255::INFO:  verisons=1, starttime=0, endtime=9223372036854775807
> 10/11/23 20:59:05 INFO zookeeper.ZooKeeper: Client environment:zookeeper.version=3.2.2-888565, built on 12/08/2009 21:51 GMT
> 10/11/23 20:59:05 INFO zookeeper.ZooKeeper: Client environment:host.name=us01-ciqps1-name01.carrieriq.com
> 10/11/23 20:59:05 INFO zookeeper.ZooKeeper: Client environment:java.version=1.6.0_21
> 10/11/23 20:59:05 INFO zookeeper.ZooKeeper: Client environment:java.vendor=Sun Microsystems Inc.
> ...
> 10/11/23 20:59:05 INFO zookeeper.ClientCnxn: Server connection successful
> 10/11/23 20:59:05 DEBUG zookeeper.ZooKeeperWrapper: Read ZNode /hbase/root-region-server got 10.202.50.112:60020
> 10/11/23 20:59:05 DEBUG client.HConnectionManager$TableServers: Found ROOT at 10.202.50.112:60020
> 10/11/23 20:59:05 DEBUG client.HConnectionManager$TableServers: Cached location for .META.,,1 is us01-ciqps1-grid02.carrieriq.com:60020
> Exception in thread "main" java.io.IOException: Expecting at least one region.
>         at org.apache.hadoop.hbase.mapreduce.TableInputFormatBase.getSplits(TableInputFormatBase.java:281)
>         at org.apache.hadoop.mapred.JobClient.writeNewSplits(JobClient.java:885)
>         at org.apache.hadoop.mapred.JobClient.submitJobInternal(JobClient.java:779)
>         at org.apache.hadoop.mapreduce.Job.submit(Job.java:432)
>         at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:447)
>         at org.apache.hadoop.hbase.mapreduce.Export.main(Export.java:146)
> Related code is:
>     if (keys == null || keys.getFirst() == null ||
>         keys.getFirst().length == 0) {
>       throw new IOException("Expecting at least one region.");
>     }
> My intention was to save the dangling rows in .META. (for future investigation) which prevented a table from being created.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.