@Override
  public boolean requireWritingToTmpDirFirst() {
    // Returns true if either of the two StoreFileTracker returns true.
    // For example, if we want to migrate from a tracker implementation which can ignore the broken
    // files under data directory to a tracker implementation which can not, if we still allow
    // writing in tmp directory directly, we may have some broken files under the data directory and
    // then after we finally change the implementation which can not ignore the broken files, we
    // will be in trouble.
    return src.requireWritingToTmpDirFirst() || dst.requireWritingToTmpDirFirst();
  }
A store file tracker used for migrating between store file tracker implementations.
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/storefiletracker/MigrationStoreFileTracker.java