docs: public void flush() throws IOException {
          checkMutable();
          long startTime = System.currentTimeMillis();
          channel.force(true);
          long elapsedTime = System.currentTimeMillis() - startTime;
          LogFlushStats.recordFlushRequest(elapsedTime);
          logger.debug("flush time " + elapsedTime);
          setHighWaterMark.set(getSizeInBytes());
          logger.debug("flush high water mark:" + highWaterMark());
      }