Merge branch 'master' of github.com:redisson/redisson

pull/903/head
Nikita 8 years ago
commit 3d55293caa

@ -230,27 +230,15 @@ public class RedissonKeys implements RKeys {
}; };
for (MasterSlaveEntry entry : entries) { for (MasterSlaveEntry entry : entries) {
RFuture<Collection<String>> findFuture = commandExecutor.readAsync(entry, null, RedisCommands.KEYS, pattern); Iterator<String> keysIterator = createKeysIterator(entry, pattern, 10);
findFuture.addListener(new FutureListener<Collection<String>>() { Collection<String> keys = new HashSet<String>();
@Override while (keysIterator.hasNext()) {
public void operationComplete(Future<Collection<String>> future) throws Exception { String key = keysIterator.next();
if (!future.isSuccess()) { keys.add(key);
failed.set(future.cause()); }
checkExecution(result, failed, count, executed); RFuture<Long> deleteFuture = deleteAsync(keys.toArray(new String[keys.size()]));
return; deleteFuture.addListener(listener);
} }
Collection<String> keys = future.getNow();
if (keys.isEmpty()) {
checkExecution(result, failed, count, executed);
return;
}
RFuture<Long> deleteFuture = deleteAsync(keys.toArray(new String[keys.size()]));
deleteFuture.addListener(listener);
}
});
}
return result; return result;
} }

Loading…
Cancel
Save