code: @Override
    public synchronized OutputCommitter getOutputCommitter(TaskAttemptContext context)
        throws IOException {
      // Cache the committer.
      if (committer == null) {
        committer = createCommitter(context);
      }
      return committer;
    }
docs: Gets the cached OutputCommitter, creating a new one if it doesn't exist.