Index: src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java =================================================================== --- src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java (revision 1195079) +++ src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java (working copy) @@ -654,20 +654,22 @@ } else if (abortRequested) { if (this.fsOk) { closeAllRegions(abortRequested); // Don't leave any open file handles - closeWAL(false); } LOG.info("aborting server at: " + this.serverInfo.getServerName()); } else { closeAllRegions(abortRequested); - closeWAL(true); closeAllScanners(); LOG.info("stopping server at: " + this.serverInfo.getServerName()); } // Interrupt catalog tracker here in case any regions being opened out in // handlers are stuck waiting on meta or root. if (this.catalogTracker != null) this.catalogTracker.stop(); - if (this.fsOk) + if (this.fsOk) { waitOnAllRegionsToClose(abortRequested); + if (!this.killed){ + closeWAL(abortRequested ? false : true); + } + } // Make sure the proxy is down. if (this.hbaseMaster != null) {