code: protected String refineKey(Object key) {
          String refinedKey = DigestUtils.md5Hex(String.valueOf(key)) + "_" + String.valueOf(key.hashCode());
          log.debug("QueryResultCache refineKey original {} to {}", key, refinedKey);
          return refinedKey;
      }
docs: {@inheritDoc}
  
  Because query cache key contains all the SQL statement and addtional information,
  it's too long for memcached cache key.
  So shorten the key by hashing.