public MemoryRowBlock(DataType[] dataTypes, ResizableLimitSpec limitSpec, boolean isDirect, String dataFormat) { this.memory = new ResizableMemoryBlock(limitSpec, isDirect); this.dataTypes = dataTypes; this.dataFormat = dataFormat; }
@Override public String toString() { return "memory=" + FileUtil.humanReadableByteCount(capacity(), false) + "," + limitSpec; } }
@Override public void ensureSize(int size) { if (!buffer.isWritable(size)) { int newBlockSize = limitSpec.increasedSize(size); if (!limitSpec.canIncrease(buffer.writableBytes() + newBlockSize)) { throw new ValueOutOfRangeException("Cannot increase RowBlock anymore."); } resize(newBlockSize); LOG.info("Increase DirectRowBlock to " + FileUtil.humanReadableByteCount(newBlockSize, false)); } }
@Override public void ensureSize(int size) { if (!buffer.isWritable(size)) { int newBlockSize = limitSpec.increasedSize(size); if (!limitSpec.canIncrease(buffer.writableBytes() + newBlockSize)) { throw new ValueOutOfRangeException("Cannot increase RowBlock anymore."); } resize(newBlockSize); LOG.info("Increase DirectRowBlock to " + FileUtil.humanReadableByteCount(newBlockSize, false)); } }
public MemoryRowBlock(DataType[] dataTypes, ResizableLimitSpec limitSpec, boolean isDirect, String dataFormat) { this.memory = new ResizableMemoryBlock(limitSpec, isDirect); this.dataTypes = dataTypes; this.dataFormat = dataFormat; }
@Override public String toString() { return "memory=" + FileUtil.humanReadableByteCount(capacity(), false) + "," + limitSpec; } }
@Override public MemoryBlock duplicate() { return new ResizableMemoryBlock(buffer.duplicate().readerIndex(0), limitSpec); }
@Override public MemoryBlock duplicate() { return new ResizableMemoryBlock(buffer.duplicate().readerIndex(0), limitSpec); }
public DirectBufTuple(DataType[] types) { ByteBuffer bb = ByteBuffer.allocateDirect(getLength()).order(ByteOrder.LITTLE_ENDIAN); memoryBlock = new ResizableMemoryBlock(bb); set(memoryBlock, 0, types); }
public DirectBufTuple(DataType[] types) { ByteBuffer bb = ByteBuffer.allocateDirect(getLength()).order(ByteOrder.LITTLE_ENDIAN); memoryBlock = new ResizableMemoryBlock(bb); set(memoryBlock, 0, types); }
public BaseTupleBuilder(DataType[] schema) { super(schema); this.memoryBlock = new ResizableMemoryBlock(new ResizableLimitSpec(64 * StorageUnit.KB), true); }
public BaseTupleBuilder(DataType[] schema) { super(schema); this.memoryBlock = new ResizableMemoryBlock(new ResizableLimitSpec(64 * StorageUnit.KB), true); }
public TajoMemoryResultSet(QueryId queryId, Schema schema, SerializedResultSet resultSet, Map<String, String> clientSideSessionVars) { super(queryId, schema, clientSideSessionVars); if(resultSet != null && resultSet.getRows() > 0) { this.totalRow = resultSet.getRows(); try { // decompress if a codec is specified if (resultSet.hasDecompressCodec()) { byte[] compressed = resultSet.getSerializedTuples().toByteArray(); byte[] uncompressed = CompressionUtil.decompress(resultSet.getDecompressCodec(), compressed); memory = new ResizableMemoryBlock(Unpooled.wrappedBuffer(uncompressed)); } else { memory = new ResizableMemoryBlock(resultSet.getSerializedTuples().asReadOnlyByteBuffer()); } } catch (IOException e) { throw new TajoInternalError(e); } reader = new HeapRowBlockReader(memory, SchemaUtil.toDataTypes(schema), resultSet.getRows()); } else { this.totalRow = 0; this.curRow = 0; } }
public TajoMemoryResultSet(QueryId queryId, Schema schema, SerializedResultSet resultSet, Map<String, String> clientSideSessionVars) { super(queryId, schema, clientSideSessionVars); if(resultSet != null && resultSet.getRows() > 0) { this.totalRow = resultSet.getRows(); try { // decompress if a codec is specified if (resultSet.hasDecompressCodec()) { byte[] compressed = resultSet.getSerializedTuples().toByteArray(); byte[] uncompressed = CompressionUtil.decompress(resultSet.getDecompressCodec(), compressed); memory = new ResizableMemoryBlock(Unpooled.wrappedBuffer(uncompressed)); } else { memory = new ResizableMemoryBlock(resultSet.getSerializedTuples().asReadOnlyByteBuffer()); } } catch (IOException e) { throw new TajoInternalError(e); } reader = new HeapRowBlockReader(memory, SchemaUtil.toDataTypes(schema), resultSet.getRows()); } else { this.totalRow = 0; this.curRow = 0; } }