[ 
https://issues.apache.org/jira/browse/HBASE-1311?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nitay Joffe updated HBASE-1311:
-------------------------------

    Attachment: hbase-1311-v2.patch

Updated patch with working test. I think this should fix HBASE-1362 as well.

Here is a snippet from Stack describing the proposed fix to the problem:

{quote}
It looks like RootScanner notices that server is null on the .META. row because 
it says that .META. region is not valid.  This should mean this is called:

        this.master.regionManager.setUnassigned(info, true);

Line 391 of BaseScanner (run by RootScanner)

That should get it reassigned.... sometime.... in fact from your log, it does 
get assigned later...

 2009-05-09 15:22:19,261 INFO  [IPC Server handler 1 on 60000] 
master.RegionManager(319): Assigning region .META.,,1 to 
localhost_1241907737069_52172


So, I think you need to get the metaTableAvailable thing to trigger.  Perhaps 
do the compare of the numbers but also check if the region is in transition... 
regionIsInTransition in RegionManager.  You can get the param to pass by doing 
Bytes.toString on the MetaRegion name. 
{quote}

In my new RegionManager.metaRegionsInTransition method:
- Does onlineMetaRegions need to be synchronized?
- Does regionIsInTransition need to be synchronized?

I was following what I saw in other places that use those data structures, but 
I'm not clear on why one is synchronized yet not the other.

> ZooKeeperWrapper: Failed to set watcher on ZNode /hbase/master
> --------------------------------------------------------------
>
>                 Key: HBASE-1311
>                 URL: https://issues.apache.org/jira/browse/HBASE-1311
>             Project: Hadoop HBase
>          Issue Type: Bug
>            Reporter: Andrew Purtell
>            Assignee: Nitay Joffe
>            Priority: Blocker
>             Fix For: 0.20.0
>
>         Attachments: dumb-wrapper-hack.patch, dump.txt, hbase-1311-v2.patch, 
> hbase-1311.patch
>
>
> After about 12 hours of operation, this repeats over and over in the 
> regionserver log:
> 2009-04-05 19:44:38,445 WARN 
> org.apache.hadoop.hbase.zookeeper.ZooKeeperWrapper: Failed to set watcher on 
> ZNode /hbase/master
> org.apache.zookeeper.KeeperException$SessionExpiredException: KeeperErrorCode 
> = Session expired
>       at org.apache.zookeeper.KeeperException.create(KeeperException.java:118)
>       at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:709)
>       at 
> org.apache.hadoop.hbase.zookeeper.ZooKeeperWrapper.watchMasterAddress(ZooKeeperWrapper.java:235)
>       at 
> org.apache.hadoop.hbase.regionserver.HRegionServer.watchMasterAddress(HRegionServer.java:343)
>       at 
> org.apache.hadoop.hbase.regionserver.HRegionServer.process(HRegionServer.java:339)
>       at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:366)
> 2009-04-05 19:44:38,445 WARN 
> org.apache.hadoop.hbase.regionserver.HRegionServer: Unable to set watcher on 
> ZooKeeper master address. Retrying.

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

Reply via email to