@Override
  public Date readDatetimeValue(String spaceKey, String propertyName) throws IOException {
    Date lastDate = null;
    String documentName = prepareValueStoreDocumentName(spaceKey, propertyName);

    if (logger.isDebugEnabled())
      logger.debug(
          "Going to read datetime value from {} property for space {}. Document name is {}.",
          propertyName,
          spaceKey,
          documentName);

    refreshSearchIndex(getRiverIndexName());
    GetResponse lastSeqGetResponse =
        client
            .prepareGet(getRiverIndexName(), riverName.name(), documentName)
            .execute()
            .actionGet();
    if (lastSeqGetResponse.isExists()) {
      Object timestamp = lastSeqGetResponse.getSourceAsMap().get(STORE_FIELD_VALUE);
      if (timestamp != null) {
        lastDate = DateTimeUtils.parseISODateTime(timestamp.toString());
      }
    } else {
      if (logger.isDebugEnabled())
        logger.debug("{} document doesn't exist in remore river persistent store", documentName);
    }
    return lastDate;
  }