private void compareIndexValueToLogEntry(String blobId, IndexValue indexValue,
      DumpDataHelper.LogBlobRecordInfo logBlobRecordInfo) {
    boolean isDeleted = indexValue.isFlagSet(IndexValue.Flags.Delete_Index);
    boolean isExpired = DumpDataHelper.isExpired(indexValue.getExpiresAtMs(), currentTimeInMs);
    if (isDeleted != logBlobRecordInfo.isDeleted) {
      metrics.indexToLogDeleteFlagMisMatchError.inc();
      logger.error("Deleted value mismatch for {} Index value {}, Log value {}", logBlobRecordInfo.blobId, isDeleted,
          logBlobRecordInfo.isDeleted);
    } else if (!logBlobRecordInfo.isDeleted && isExpired != logBlobRecordInfo.isExpired) {
      metrics.indexToLogExpiryMisMatchError.inc();
      logger.error(
          "Expiration value mismatch for {} Index value {}, Log value {}, index expiresAt in ms {}, log expiresAt in ms {}",
          logBlobRecordInfo.blobId, isExpired, logBlobRecordInfo.isExpired, indexValue.getExpiresAtMs(),
          logBlobRecordInfo.expiresAtMs);
    } else if (!blobId.equals(logBlobRecordInfo.blobId.getID())) {
      metrics.indexToLogBlobIdMisMatchError.inc();
      logger.error("BlobId value mismatch for {} Index value {}, Log value {}", logBlobRecordInfo.blobId, blobId,
          logBlobRecordInfo.blobId);
    }
  }
Compares values from index to that in the Log
@param blobId the blobId for which comparison is made
@param indexValue the {@link IndexValue} to be used in comparison
@param logBlobRecordInfo the {@link DumpDataHelper.LogBlobRecordInfo} to be used in comparison
ambry-tools/src/main/java/com/github/ambry/store/DumpDataTool.java