String propertiesString = ProcessEntityHolder.generateString(correlationKey.getProperties());
      Cache<String, Object> cache = getCache();
      List<Long> retval = new ArrayList<Long>();
      for (String key : cache.keySet()) {
        if (key.startsWith("correlationInfo")) {
          ProcessEntityHolder holder = (ProcessEntityHolder) cache.get(key);
          if (holder.getCorrelationKeyId() == correlationKey.getProperties().size()) {
            if (holder.getCorrelationKeyProperties().contains(propertiesString)) {
              retval.add(holder.getProcessInstanceId());
            }
          }
        }
      }
      return (retval.size() == 1) ? retval.iterator().next() : null;