use of com.navercorp.pinpoint.web.mapper.TraceIndexScatterMapper2 in project pinpoint by naver.
the class HbaseApplicationTraceIndexDao method scanTraceScatter.
/**
*
*/
@Override
public List<Dot> scanTraceScatter(String applicationName, SelectedScatterArea area, TransactionId offsetTransactionId, int offsetTransactionElapsed, int limit) {
if (applicationName == null) {
throw new NullPointerException("applicationName must not be null");
}
if (area == null) {
throw new NullPointerException("range must not be null");
}
if (limit < 0) {
throw new IllegalArgumentException("negative limit:" + limit);
}
logger.debug("scanTraceScatter");
Scan scan = createScan(applicationName, area.getTimeRange());
// method 1
// not used yet. instead, use another row mapper (testing)
// scan.setFilter(makeResponseTimeFilter(area, offsetTransactionId, offsetTransactionElapsed));
// method 2
ResponseTimeRange responseTimeRange = area.getResponseTimeRange();
TraceIndexScatterMapper2 mapper = new TraceIndexScatterMapper2(responseTimeRange.getFrom(), responseTimeRange.getTo());
List<List<Dot>> dotListList = hbaseOperations2.findParallel(HBaseTables.APPLICATION_TRACE_INDEX, scan, traceIdRowKeyDistributor, limit, mapper, APPLICATION_TRACE_INDEX_NUM_PARTITIONS);
List<Dot> result = new ArrayList<>();
for (List<Dot> dotList : dotListList) {
result.addAll(dotList);
}
return result;
}
Aggregations