protected static int calculateSize(Aggregator[] aggregators) { int size = SizedUtil.ARRAY_SIZE /*aggregators[]*/ + (SizedUtil.POINTER_SIZE * aggregators.length); for (Aggregator aggregator : aggregators) { size += aggregator.getSize(); } return size; }
@Override public void aggregate(Aggregator[] aggregators, Tuple result) { long dsize = memoryUsed; for (int i = 0; i < expressions.length; i++) { if (expressions[i].evaluate(result, ptr) && ptr.getLength() != 0) { dsize -= aggregators[i].getSize(); aggregators[i].aggregate(result, ptr); dsize += aggregators[i].getSize(); } expressions[i].reset(); } while(dsize > chunk.getSize()) { logger.info("Request: {}, resizing {} by 1024*1024", dsize, chunk.getSize()); chunk.resize(chunk.getSize() + sizeIncrease); } memoryUsed = dsize; }
protected static int calculateSize(Aggregator[] aggregators) { int size = SizedUtil.ARRAY_SIZE /*aggregators[]*/ + (SizedUtil.POINTER_SIZE * aggregators.length); for (Aggregator aggregator : aggregators) { size += aggregator.getSize(); } return size; }
protected static int calculateSize(Aggregator[] aggregators) { int size = SizedUtil.ARRAY_SIZE /*aggregators[]*/ + (SizedUtil.POINTER_SIZE * aggregators.length); for (Aggregator aggregator : aggregators) { size += aggregator.getSize(); } return size; }
@Override public void aggregate(Aggregator[] aggregators, Tuple result) { long dsize = memoryUsed; for (int i = 0; i < expressions.length; i++) { if (expressions[i].evaluate(result, ptr) && ptr.getLength() != 0) { dsize -= aggregators[i].getSize(); aggregators[i].aggregate(result, ptr); dsize += aggregators[i].getSize(); } expressions[i].reset(); } while(dsize > chunk.getSize()) { logger.info("Request: {}, resizing {} by 1024*1024", dsize, chunk.getSize()); chunk.resize(chunk.getSize() + sizeIncrease); } memoryUsed = dsize; }
@Override public void aggregate(Aggregator[] aggregators, Tuple result) { long dsize = memoryUsed; for (int i = 0; i < expressions.length; i++) { if (expressions[i].evaluate(result, ptr) && ptr.getLength() != 0) { dsize -= aggregators[i].getSize(); aggregators[i].aggregate(result, ptr); dsize += aggregators[i].getSize(); } expressions[i].reset(); } while(dsize > chunk.getSize()) { logger.info("Request: {}, resizing {} by 1024*1024", dsize, chunk.getSize()); chunk.resize(chunk.getSize() + sizeIncrease); } memoryUsed = dsize; }