static MasterRegionWALRoller create(String name, Configuration conf, Abortable abortable,
    FileSystem fs, Path walRootDir, Path globalWALRootDir, String archivedWALSuffix,
    long rollPeriodMs, long flushSize) {
    // we can not run with wal disabled, so force set it to true.
    conf.setBoolean(WALFactory.WAL_ENABLED, true);
    // we do not need this feature, so force disable it.
    conf.setBoolean(AbstractFSWALProvider.SEPARATE_OLDLOGDIR, false);
    conf.setLong(WAL_ROLL_PERIOD_KEY, rollPeriodMs);
    // make the roll size the same with the flush size, as we only have one region here
    conf.setLong(WALUtil.WAL_BLOCK_SIZE, flushSize * 2);
    conf.setFloat(AbstractFSWAL.WAL_ROLL_MULTIPLIER, 0.5f);
    return new MasterRegionWALRoller(name, conf, abortable, fs, walRootDir, globalWALRootDir,
      archivedWALSuffix);
  }
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