AccumuloException {
try {
ArrayList<TabletLocation> list = new ArrayList<TabletLocation>();
OpTimer opTimer = null;
if (log.isTraceEnabled())
opTimer = new OpTimer(log, Level.TRACE).start("Looking up in " + src.tablet_extent.getTableId() + " row=" + TextUtil.truncate(row) + " extent="
+ src.tablet_extent + " tserver=" + src.tablet_location);
Range range = new Range(row, true, stopRow, true);
TreeMap<Key,Value> results = new TreeMap<Key,Value>();
// System.out.println(range);
boolean more = ThriftScanner.getBatchFromServer(credentials, range, src.tablet_extent, src.tablet_location, results, locCols, Constants.SCAN_BATCH_SIZE,
Constants.NO_AUTHS, false, instance.getConfiguration());
if (more && results.size() == 1) {
range = new Range(results.lastKey().followingKey(PartialKey.ROW_COLFAM_COLQUAL_COLVIS_TIME), true, new Key(stopRow).followingKey(PartialKey.ROW), false);
more = ThriftScanner.getBatchFromServer(credentials, range, src.tablet_extent, src.tablet_location, results, locCols, Constants.SCAN_BATCH_SIZE,
Constants.NO_AUTHS, false, instance.getConfiguration());
}
if (opTimer != null)
opTimer.stop("Got " + results.size() + " results from " + src.tablet_extent + " in %DURATION%");
// System.out.println("results "+results.keySet());
Pair<SortedMap<KeyExtent,Text>,List<KeyExtent>> metadata = MetadataTable.getMetadataLocationEntries(results);