@Override
  protected void afterWALArchive(Path oldPath, Path newPath) {
    // move the archived WAL files to the global archive path
    // here we do not use the newPath directly, so that even if we fail to move some of the
    // newPaths, we are still safe because every time we will get all the files under the archive
    // directory.
    try {
      MasterRegionUtils.moveFilesUnderDir(fs, walArchiveDir, globalWALArchiveDir,
        archivedWALSuffix);
    } catch (IOException e) {
      LOG.warn("Failed to move archived wals from {} to global dir {}", walArchiveDir,
        globalWALArchiveDir, e);
    }
  }
As long as there is no RegionServerServices for a master local region, we need implement log
roller logic by our own.
<p/>
We can reuse most of the code for normal wal roller, the only difference is that there is only
one region, so in {@link #scheduleFlush(String, List)} method we can just schedule flush for the
master local region.
hbase-server/src/main/java/org/apache/hadoop/hbase/master/region/MasterRegionWALRoller.java