public boolean delete(ByteArray key, Version version) throws VoldemortException { StoreUtils.assertValidKey(key); SocketAndStreams sands = pool.checkout(destination); try { requestFormat.writeDeleteRequest( sands.getOutputStream(), name, key, (VectorClock) version, reroute); sands.getOutputStream().flush(); return requestFormat.readDeleteResponse(sands.getInputStream()); } catch (IOException e) { close(sands.getSocket()); throw new UnreachableStoreException( "Failure in delete on " + destination + ": " + e.getMessage(), e); } finally { pool.checkin(destination, sands); } }