[ 
https://issues.apache.org/jira/browse/HADOOP-2338?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12548736
 ] 

Jim Kellerman commented on HADOOP-2338:
---------------------------------------

Here's a rough outline of how cluster shutdown should work.:
- master receives shutdown request
- as each region server reports in, the master instructs the region server to 
'quiesce'. This means that the region server should stop accepting requests for 
user regions, and close them. If it has no meta regions, it reports back to the 
master that it is exiting. Otherwise it reports that it is quiesced.
- once there are only quiesced region servers running, the master instructs 
them to shut down. They close the meta regions and tell the master that they 
have exited.
- when there are no more active region servers, the master can then shut down.

> [hbase] NPE in master server
> ----------------------------
>
>                 Key: HADOOP-2338
>                 URL: https://issues.apache.org/jira/browse/HADOOP-2338
>             Project: Hadoop
>          Issue Type: Bug
>          Components: contrib/hbase
>    Affects Versions: 0.16.0
>            Reporter: Jim Kellerman
>            Assignee: Jim Kellerman
>             Fix For: 0.16.0
>
>         Attachments: master.log.gz, patch.txt
>
>
> Master gets an NPE after receiving multiple responses from the same server 
> telling the master it has opened a region.
> {code}
> 2007-12-02 20:31:37,515 DEBUG hbase.HRegion - Next sequence id for region 
> postlog,img254/577/02suecia024richardburnson0.jpg,1196619667879 is 73377537
> 2007-12-02 20:31:37,517 INFO  hbase.HRegion - region 
> postlog,img254/577/02suecia024richardburnson0.jpg,1196619667879 available
> 2007-12-02 20:31:39,200 WARN  hbase.HRegionServer - Processing message 
> (Retry: 0)
> java.io.IOException: java.io.IOException: java.lang.NullPointerException
>     at org.apache.hadoop.hbase.HMaster.processMsgs(HMaster.java :1484)
>     at org.apache.hadoop.hbase.HMaster.regionServerReport(HMaster.java:1423)
>     at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
>     at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java
>  :25)
>     at java.lang.reflect.Method.invoke(Method.java:597)
>     at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:379)
>     at org.apache.hadoop.ipc.Server$Handler.run(Server.java:596)
>     at sun.reflect.NativeConstructorAccessorImpl.newInstance0 (Native Method)
>     at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>     at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java
>  :27)
>     at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>     at 
> org.apache.hadoop.hbase.RemoteExceptionHandler.decodeRemoteException(RemoteExceptionHandler.java:82)
>     at org.apache.hadoop.hbase.RemoteExceptionHandler.checkIOException 
> (RemoteExceptionHandler.java:48)
>     at org.apache.hadoop.hbase.HRegionServer.run(HRegionServer.java:759)
>     at java.lang.Thread.run(Thread.java:619)
>       case HMsg.MSG_REPORT_PROCESS_OPEN:
>         synchronized ( this.assignAttempts) {
>           // Region server has acknowledged request to open region.
>           // Extend region open time by 1/2 max region open time.
> **1484**          assignAttempts.put(region.getRegionName (), 
>               Long.valueOf(assignAttempts.get(
>                   region.getRegionName()).longValue() +
>                   (this.maxRegionOpenTime / 2)));
>         }
>         break;
> {code}

-- 
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