proper closing of resources in case of query cancellation

This commit is contained in:
Xavier Léauté 2014-05-09 23:28:42 -07:00
parent 1be85af320
commit 32f6243be0
1 changed files with 20 additions and 18 deletions

View File

@ -60,6 +60,7 @@ public class TimeseriesQueryEngine
{
Aggregator[] aggregators = QueryRunnerHelper.makeAggregators(cursor, aggregatorSpecs);
try {
while (!cursor.isDone()) {
for (Aggregator aggregator : aggregators) {
aggregator.aggregate();
@ -74,13 +75,14 @@ public class TimeseriesQueryEngine
}
Result<TimeseriesResultValue> retVal = bob.build();
return retVal;
}
finally {
// cleanup
for (Aggregator agg : aggregators) {
agg.close();
}
return retVal;
}
}
}
);