private boolean isEmptyStoreFile(HStoreFile sf) {
    return sf.getReader().getEntries() == 0;
  }
The FIFOCompactionPolicy only choose the TTL expired store files as the compaction candidates.
If all the store files are TTL expired, then the compaction will generate a new empty file.
While its max timestamp will be Long.MAX_VALUE. If not considered separately, the store file
will never be archived because its TTL will be never expired. So we'll check the empty store
file separately (See HBASE-21504).
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/FIFOCompactionPolicy.java