scan.setCaching(caching);
if (allFilters != null) {
scan.setFilter(allFilters);
}
scan.addFamily(FConstants.CATALOG_FAMILY);
HTableInterface metaTable = getHTable();
try {
ResultScanner scanner = metaTable.getScanner(scan);
try {
Result data;
while ((data = scanner.next()) != null) {
if (data.isEmpty()) {
continue;
}
if (Bytes.startsWith(data.getRow(), FConstants.TABLEROW_PREFIX)) {
continue;
}
// Break if visit returns false.
if (!visitor.visit(data))
break;
}
} finally {
scanner.close();
metaTable.close();
}
} catch (IOException e) {
throw new MetaException(e);
}
return;