bsglz commented on a change in pull request #2202: URL: https://github.com/apache/hbase/pull/2202#discussion_r467867207
########## File path: hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/AbstractFSWAL.java ########## @@ -872,6 +874,33 @@ private IOException convertInterruptedExceptionToIOException(final InterruptedEx } } + public void archive(RegionServerServices services) throws IOException{ + if (getNumRolledLogFiles() < 1) { + return; + } + // get the earliest log of this WAL instance + Map.Entry<Path, WalProps> firstWALEntry = this.walFile2Props.firstEntry(); + // flush reigons if necessary + Map<byte[], List<byte[]>> regions = + this.sequenceIdAccounting.findLower(firstWALEntry.getValue().encodedName2HighestSequenceId); + if (regions != null) { + for (Map.Entry<byte[], List<byte[]>> entry : regions.entrySet()) { + String encodedRegionName = Bytes.toString(entry.getKey()); + HRegion r = (HRegion) services.getRegion(encodedRegionName); + if (r == null) { + LOG.warn("Failed to flush of {} when archive manually, because it is not online on us", + encodedRegionName); + return; Review comment: What do you think of just continue, since the region is not online(maybe closed or moved), anyway we will not lost data. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org