Ther zookeeper exception is ok, we're just checking that the master is down (and that tells you it is).
The error you have is the next exception. Wrong FS, it seems that you are trying to run the merge tool without the normal hbase configurations. You could pastebin your hbase-site.xml? WRT merging adjacent regions, it's mandatory since they are sorted. In the master's web ui, click on the table name and they will appear in order (and see how the last row key is the starting one of the next region). J-D On Thu, Feb 18, 2010 at 8:12 AM, Manuel de Ferran <manuel.defer...@gmail.com> wrote: > Greetings, > > we're running a small HBase 0.20.2 cluster composed of 3 Region > Servers. We would like to merge a couple of regions (PIG prefers > fewer regions). > > So we're trying to use the merge tool the following way : > * we shutdown the whole HBase cluster > * we run : /opt/hbase/bin/hbase org.apache.hadoop.hbase.util.Merge > activity activity,1263674565165/351680030184661,1266505335728 > activity,1263607560120/354059023781444,1266505307812 > > but we have the following errors : > 2010-02-18 15:50:38,444 INFO [main] util.Merge(82): Verifying that > file system is available... > 2010-02-18 15:50:38,449 INFO [main] util.Merge(91): Verifying that > HBase is not running... > 2010-02-18 15:50:38,993 INFO [main] > client.HConnectionManager$TableServers(333): getMaster attempt 0 of 1 > failed; no more retrying. > java.io.IOException: > org.apache.zookeeper.KeeperException$ConnectionLossException: > KeeperErrorCode = ConnectionLoss for /hbase/master > at > org.apache.hadoop.hbase.zookeeper.ZooKeeperWrapper.readAddressOrThrow(ZooKeeperWrapper.java:332) > at > org.apache.hadoop.hbase.zookeeper.ZooKeeperWrapper.readMasterAddressOrThrow(ZooKeeperWrapper.java:240) > at > org.apache.hadoop.hbase.client.HConnectionManager$TableServers.getMaster(HConnectionManager.java:318) > at org.apache.hadoop.hbase.client.HBaseAdmin.<init>(HBaseAdmin.java:72) > at > org.apache.hadoop.hbase.client.HBaseAdmin.checkHBaseAvailable(HBaseAdmin.java:840) > at org.apache.hadoop.hbase.util.Merge.run(Merge.java:93) > at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65) > at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79) > at org.apache.hadoop.hbase.util.Merge.main(Merge.java:382) > Caused by: org.apache.zookeeper.KeeperException$ConnectionLossException: > KeeperErrorCode = ConnectionLoss for /hbase/master > at org.apache.zookeeper.KeeperException.create(KeeperException.java:90) > at org.apache.zookeeper.KeeperException.create(KeeperException.java:42) > at org.apache.zookeeper.ZooKeeper.getData(ZooKeeper.java:892) > at > org.apache.hadoop.hbase.zookeeper.ZooKeeperWrapper.readAddressOrThrow(ZooKeeperWrapper.java:328) > ... 8 more > 2010-02-18 15:50:39,006 ERROR [main] util.Merge(384): exiting due to error > java.lang.IllegalArgumentException: Wrong FS: hdfs://xen13:9000/hbase, > expected: file:/// > at org.apache.hadoop.fs.FileSystem.checkPath(FileSystem.java:305) > at org.apache.hadoop.fs.FileSystem.makeQualified(FileSystem.java:217) > at > org.apache.hadoop.fs.FilterFileSystem.makeQualified(FilterFileSystem.java:79) > at org.apache.hadoop.hbase.util.FSUtils.getRootDir(FSUtils.java:259) > at org.apache.hadoop.hbase.util.MetaUtils.initialize(MetaUtils.java:89) > at org.apache.hadoop.hbase.util.MetaUtils.<init>(MetaUtils.java:79) > at org.apache.hadoop.hbase.util.Merge.run(Merge.java:102) > at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65) > at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79) > at org.apache.hadoop.hbase.util.Merge.main(Merge.java:382) > > > > By the way, could I run the merge tool safely ? I've read some jira > comments about adjacent regions, is it a requirement ? How could I > check that ? > > Thanks >