private boolean compact() {
      CompactableOplog[] oplogs = scheduledOplogs;
      int totalCount = 0;
      long compactionStart = getStats().startCompaction();
      long start = System.nanoTime();
      try {
        for (int i = 0; i < oplogs.length && keepCompactorRunning(); i++) {
          totalCount += oplogs[i].compact(this);
        }

      } finally {
        getStats().endCompaction(compactionStart);
      }
      long endTime = System.nanoTime();
      logger.info("compaction did {} creates and updates in {} ms",
          totalCount, ((endTime - start) / 1000000));
      return true;
    }
A non-backup just needs values that are written to one of the oplogs being compacted that are
still alive (have not been deleted or modified in a future oplog) to be copied forward to the
current active oplog
geode-core/src/main/java/org/apache/geode/internal/cache/DiskStoreImpl.java