@Override public void addTuple(Tuple t) throws IOException { tupleConverter.convert(t, rowBlock.getWriter()); if(rowBlock.usedMem() > DEFAULT_BUFFER_SIZE) { writeRowBlock(rowBlock); rowBlock.clear(); } }
@Override public void addTuple(Tuple t) throws IOException { tupleConverter.convert(t, rowBlock.getWriter()); if(rowBlock.usedMem() > DEFAULT_BUFFER_SIZE) { writeRowBlock(rowBlock); rowBlock.clear(); } }
@Override public void run() { try { rowBlock.clear(); int endRow = currentNumRows + fetchRowNum; while (currentNumRows < endRow) { Tuple tuple = scanExec.next(); if (tuple == null) { eof = true; break; } else { rowBlock.getWriter().addTuple(tuple); currentNumRows++; if (currentNumRows >= maxRow) { eof = true; break; } } } if (rowBlock.rows() > 0) { totalRows += rowBlock.rows(); } future.set(rowBlock); } catch (Throwable t) { future.setException(t); } } });
public static MemoryRowBlock createRowBlock(int rowNum) { long allocateStart = System.currentTimeMillis(); MemoryRowBlock rowBlock = new MemoryRowBlock(SchemaUtil.toDataTypes(schema), StorageUnit.KB * 128); long allocatedEnd = System.currentTimeMillis(); LOG.info(FileUtil.humanReadableByteCount(rowBlock.capacity(), true) + " bytes allocated " + (allocatedEnd - allocateStart) + " msec"); long writeStart = System.currentTimeMillis(); for (int i = 0; i < rowNum; i++) { fillRow(i, rowBlock.getWriter()); } long writeEnd = System.currentTimeMillis(); LOG.info("writing takes " + (writeEnd - writeStart) + " msec"); return rowBlock; }
public boolean addTuple(Tuple tuple) { int prevPos = currentRowBlock.getMemory().writerPosition(); if (currentRowBlock.getWriter().addTuple(tuple)) { UnSafeTuple unSafeTuple = new UnSafeTuple(); unSafeTuple.set(currentRowBlock.getMemory(), prevPos, dataTypes); return super.add(unSafeTuple); } else { this.totalUsedMem += currentRowBlock.usedMem(); this.currentRowBlock = new MemoryRowBlock(dataTypes, new FixedSizeLimitSpec(pageSize), true); this.rowBlocks.add(currentRowBlock); return this.addTuple(tuple); } }
public boolean addTuple(Tuple tuple) { int prevPos = currentRowBlock.getMemory().writerPosition(); if (currentRowBlock.getWriter().addTuple(tuple)) { UnSafeTuple unSafeTuple = new UnSafeTuple(); unSafeTuple.set(currentRowBlock.getMemory(), prevPos, dataTypes); return super.add(unSafeTuple); } else { this.totalUsedMem += currentRowBlock.usedMem(); this.currentRowBlock = new MemoryRowBlock(dataTypes, new FixedSizeLimitSpec(pageSize), true); this.rowBlocks.add(currentRowBlock); return this.addTuple(tuple); } }
RowWriter writer = rowBlock.getWriter(); long prevUsedMem = rowBlock.usedMem(); totalBufferCapacity -= rowBlock.capacity();
RowWriter writer = rowBlock.getWriter(); long prevUsedMem = rowBlock.usedMem(); totalBufferCapacity -= rowBlock.capacity();
break; } else { rowBlock.getWriter().addTuple(tuple); currentNumRows++; if (currentNumRows >= maxRow) {
rowBlock.getWriter().addTuple(currentTuple); currentRow++; rowCount++;
rowBlock.getWriter().addTuple(currentTuple); currentRow++; rowCount++;
rowBlock.getWriter().addTuple(outTuple);
rowBlock.getWriter().addTuple(outTuple);