private boolean hasDeleteEntryOutOfRetention(StoreKey key, Offset searchStartOffset, long deleteReferenceTime)
        throws StoreException {
      FileSpan deleteSearchSpan = new FileSpan(searchStartOffset, srcIndex.getCurrentEndOffset());
      IndexValue deleteValue =
          srcIndex.findKey(key, deleteSearchSpan, EnumSet.of(PersistentIndex.IndexEntryType.DELETE));
      return deleteValue != null && deleteValue.getOperationTimeInMs() < deleteReferenceTime;
    }
@param key the {@link StoreKey} to check
@param searchStartOffset the start offset of the search for delete entry
@param deleteReferenceTime the timestamp to reference when deciding a delete is out of retention
@return {@code true} if the key has a delete entry that is out of retention
@throws StoreException if there are any problems using the index
ambry-store/src/main/java/com/github/ambry/store/BlobStoreCompactor.java