You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2010/10/15 23:22:40 UTC
svn commit: r1023115 - in /hbase/trunk/src/main/java/org/apache/hadoop/hbase:
ipc/HRegionInterface.java master/ServerManager.java
regionserver/HRegionServer.java regionserver/RegionServerClosedException.java
regionserver/RegionServerStoppedException.java
Author: stack
Date: Fri Oct 15 21:22:38 2010
New Revision: 1023115
URL: http://svn.apache.org/viewvc?rev=1023115&view=rev
Log:
HBASE-3113 Don't reassign regions if cluster is being shutdown; part 2 -- fix wrongly named exception and let out IOEs when opening regions on RS
Added:
hbase/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerStoppedException.java
Removed:
hbase/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerClosedException.java
Modified:
hbase/trunk/src/main/java/org/apache/hadoop/hbase/ipc/HRegionInterface.java
hbase/trunk/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java
hbase/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
Modified: hbase/trunk/src/main/java/org/apache/hadoop/hbase/ipc/HRegionInterface.java
URL: http://svn.apache.org/viewvc/hbase/trunk/src/main/java/org/apache/hadoop/hbase/ipc/HRegionInterface.java?rev=1023115&r1=1023114&r2=1023115&view=diff
==============================================================================
--- hbase/trunk/src/main/java/org/apache/hadoop/hbase/ipc/HRegionInterface.java (original)
+++ hbase/trunk/src/main/java/org/apache/hadoop/hbase/ipc/HRegionInterface.java Fri Oct 15 21:22:38 2010
@@ -299,14 +299,18 @@ public interface HRegionInterface extend
/**
* Opens the specified region.
* @param region region to open
+ * @param RegionServerStoppedException
+ * @param IOException
*/
- public void openRegion(final HRegionInfo region);
+ public void openRegion(final HRegionInfo region) throws IOException;
/**
* Opens the specified regions.
* @param regions regions to open
+ * @param RegionServerStoppedException
+ * @param IOException
*/
- public void openRegions(final List<HRegionInfo> regions);
+ public void openRegions(final List<HRegionInfo> regions) throws IOException;
/**
* Closes the specified region.
Modified: hbase/trunk/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java
URL: http://svn.apache.org/viewvc/hbase/trunk/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java?rev=1023115&r1=1023114&r2=1023115&view=diff
==============================================================================
--- hbase/trunk/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java (original)
+++ hbase/trunk/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java Fri Oct 15 21:22:38 2010
@@ -506,7 +506,8 @@ public class ServerManager {
* @param server server to open a region
* @param region region to open
*/
- public void sendRegionOpen(HServerInfo server, HRegionInfo region) {
+ public void sendRegionOpen(HServerInfo server, HRegionInfo region)
+ throws IOException {
HRegionInterface hri = getServerConnection(server);
if (hri == null) {
LOG.warn("Attempting to send OPEN RPC to server " + server.getServerName()
@@ -524,7 +525,8 @@ public class ServerManager {
* @param server server to open a region
* @param regions regions to open
*/
- public void sendRegionOpen(HServerInfo server, List<HRegionInfo> regions) {
+ public void sendRegionOpen(HServerInfo server, List<HRegionInfo> regions)
+ throws IOException {
HRegionInterface hri = getServerConnection(server);
if (hri == null) {
LOG.warn("Attempting to send OPEN RPC to server " + server.getServerName()
Modified: hbase/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
URL: http://svn.apache.org/viewvc/hbase/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java?rev=1023115&r1=1023114&r2=1023115&view=diff
==============================================================================
--- hbase/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java (original)
+++ hbase/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java Fri Oct 15 21:22:38 2010
@@ -1929,7 +1929,8 @@ public class HRegionServer implements HR
// Region open/close direct RPCs
@Override
- public void openRegion(HRegionInfo region) {
+ public void openRegion(HRegionInfo region)
+ throws RegionServerStoppedException {
LOG.info("Received request to open region: " +
region.getRegionNameAsString());
if (this.stopped) throw new RegionServerStoppedException();
@@ -1943,7 +1944,8 @@ public class HRegionServer implements HR
}
@Override
- public void openRegions(List<HRegionInfo> regions) {
+ public void openRegions(List<HRegionInfo> regions)
+ throws RegionServerStoppedException {
LOG.info("Received request to open " + regions.size() + " region(s)");
for (HRegionInfo region: regions) openRegion(region);
}
Added: hbase/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerStoppedException.java
URL: http://svn.apache.org/viewvc/hbase/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerStoppedException.java?rev=1023115&view=auto
==============================================================================
--- hbase/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerStoppedException.java (added)
+++ hbase/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerStoppedException.java Fri Oct 15 21:22:38 2010
@@ -0,0 +1,29 @@
+/**
+ * Copyright 2010 The Apache Software Foundation
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.hadoop.hbase.regionserver;
+
+import org.apache.hadoop.hbase.DoNotRetryIOException;
+
+/**
+ * Thrown by the region server when it is shutting down state.
+ */
+@SuppressWarnings("serial")
+public class RegionServerStoppedException extends DoNotRetryIOException {
+}
\ No newline at end of file