@Override
  protected Writer createWriterInstance(FileSystem fs, Path path) throws IOException {
    Writer writer = FSHLogProvider.createWriter(conf, fs, path, false, this.blocksize);
    if (writer instanceof ProtobufLogWriter) {
      preemptiveSync((ProtobufLogWriter) writer);
    }
    return writer;
  }
This method allows subclasses to inject different writers without having to extend other
methods like rollWriter().
@return Writer instance
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/FSHLog.java