use of com.pingcap.tikv.predicates.TiKVScanAnalyzer in project tispark by pingcap.
the class RegionUtils method getRegionTasks.
private static List<RegionTask> getRegionTasks(TiSession session, String databaseName, String tableName) {
requireNonNull(session, "session is null");
requireNonNull(databaseName, "databaseName is null");
requireNonNull(tableName, "tableName is null");
TiTableInfo table = session.getCatalog().getTable(databaseName, tableName);
requireNonNull(table, String.format("Table not found %s.%s", databaseName, tableName));
TiKVScanAnalyzer builder = new TiKVScanAnalyzer();
TiDAGRequest dagRequest = builder.buildTiDAGReq(ImmutableList.of(), ImmutableList.of(), table, session.getTimestamp(), new TiDAGRequest(PushDownType.NORMAL));
List<KeyRange> ranges = new ArrayList<>();
dagRequest.getRangesMaps().forEach((k, v) -> ranges.addAll(v));
return RangeSplitter.newSplitter(session.getRegionManager()).splitRangeByRegion(ranges);
}
Aggregations