@Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    MessageInfo that = (MessageInfo) o;
    return size == that.size && expirationTimeInMs == that.expirationTimeInMs && isDeleted == that.isDeleted
        && isTtlUpdated == that.isTtlUpdated && isUndeleted == that.isUndeleted && accountId == that.accountId
        && containerId == that.containerId && operationTimeMs == that.operationTimeMs && Objects.equals(key, that.key)
        && lifeVersion == that.lifeVersion && Objects.equals(crc, that.crc);
  }
True when the life version is not from frontend requests.
@return true when it's not from frontend requests.
ambry-api/src/main/java/com/github/ambry/store/MessageInfo.java