/* Find all the suitable endpoints for the keys */
Map<String, EndPoint> endPoints = StorageService.instance().findSuitableEndPoints(keys.toArray( new String[0] ));
/* Construct the messages to be sent out */
Map<String, Message> messages = constructMessages(readMessages);
/* Dispatch the messages to the respective endpoints */
IAsyncResult iar = dispatchMessages(endPoints, messages);
List<byte[]> results = iar.multiget(2*DatabaseDescriptor.getRpcTimeout(), TimeUnit.MILLISECONDS);
for ( byte[] body : results )
{
DataInputBuffer bufIn = new DataInputBuffer();
bufIn.reset(body, body.length);