/** {@inheritDoc} */
  @Override
  public GridCacheEntryEx<K, V> entryEx(K key) {
    GridNearCacheEntry<K, V> entry = null;

    while (true) {
      try {
        entry = (GridNearCacheEntry<K, V>) super.entryEx(key);

        entry.initializeFromDht();

        return entry;
      } catch (GridCacheEntryRemovedException ignore) {
        if (log.isDebugEnabled())
          log.debug(
              "Got removed near entry while initializing from DHT entry (will retry): " + entry);
      }
    }
  }