@Override public RecordReader<T> visit(NoOpFilter noOpFilter) { return new RecordReaderImplementation<T>( MessageColumnIO.this, recordMaterializer, validating, new ColumnReadStoreImpl(columns, recordMaterializer.getRootConverter(), getType(), createdBy)); } });
private ColumnReaderImpl newMemColumnReader(ColumnDescriptor path, PageReader pageReader) { PrimitiveConverter converter = getPrimitiveConverter(path); return new ColumnReaderImpl(path, pageReader, converter, writerVersion); }
@Override public ColumnReader getColumnReader(ColumnDescriptor path) { return newMemColumnReader(path, pageReadStore.getPageReader(path)); }
try { ByteBufferAllocator allocator = new HeapByteBufferAllocator(); ColumnReadStoreImpl columnReadStore = new ColumnReadStoreImpl(null, new DummyRecordConverter(schema).getRootConverter(), schema, createdBy); this.start(); List<BlocksCombiner.SmallBlocksUnion> largeBlocks = BlocksCombiner.combineLargeBlocks(readers, maxBlockSize); ColumnWriter columnWriter = columnWriteStoreV1.getColumnWriter(path); if (columnChunkPageReader.isPresent()) { ColumnReader columnReader = columnReadStore.newMemColumnReader(path, columnChunkPageReader.get()); for (int i = 0; i < columnReader.getTotalValueCount(); i++) { consumeTriplet(columnWriteStoreV1, columnWriter, columnReader);
columnReaders[i] = columnStore.getColumnReader(leafColumnIO.getColumnDescriptor()); int maxRepetitionLevel = leafColumnIO.getRepetitionLevel(); nextColumnIdxForRepLevel[i] = new int[maxRepetitionLevel+1];
columnReaders[i] = columnStore.getColumnReader(leafColumnIO.getColumnDescriptor()); int maxRepetitionLevel = leafColumnIO.getRepetitionLevel(); nextColumnIdxForRepLevel[i] = new int[maxRepetitionLevel+1];
@Override public RecordReader<T> visit(NoOpFilter noOpFilter) { return new RecordReaderImplementation<T>( MessageColumnIO.this, recordMaterializer, validating, new ColumnReadStoreImpl(columns, recordMaterializer.getRootConverter(), getType(), createdBy)); } });
public ColumnReaderImpl newMemColumnReader(ColumnDescriptor path, PageReader pageReader) { PrimitiveConverter converter = getPrimitiveConverter(path); return new ColumnReaderImpl(path, pageReader, converter, writerVersion); }
@Override public RecordReader<T> visit(UnboundRecordFilterCompat unboundRecordFilterCompat) { return new FilteredRecordReader<T>( MessageColumnIO.this, recordMaterializer, validating, new ColumnReadStoreImpl(columns, recordMaterializer.getRootConverter(), getType(), createdBy), unboundRecordFilterCompat.getUnboundRecordFilter(), columns.getRowCount() ); }
@Override public ColumnReader getColumnReader(ColumnDescriptor path) { PrimitiveConverter converter = getPrimitiveConverter(path); PageReader pageReader = pageReadStore.getPageReader(path); Optional<PrimitiveIterator.OfLong> rowIndexes = pageReadStore.getRowIndexes(); if (rowIndexes.isPresent()) { return new SynchronizingColumnReader(path, pageReader, converter, writerVersion, rowIndexes.get()); } else { return new ColumnReaderImpl(path, pageReader, converter, writerVersion); } }
@Override public RecordReader<T> visit(UnboundRecordFilterCompat unboundRecordFilterCompat) { return new FilteredRecordReader<T>( MessageColumnIO.this, recordMaterializer, validating, new ColumnReadStoreImpl(columns, recordMaterializer.getRootConverter(), getType(), createdBy), unboundRecordFilterCompat.getUnboundRecordFilter(), columns.getRowCount() ); }
@Override public RecordReader<T> visit(FilterPredicateCompat filterPredicateCompat) { FilterPredicate predicate = filterPredicateCompat.getFilterPredicate(); IncrementallyUpdatedFilterPredicateBuilder builder = new IncrementallyUpdatedFilterPredicateBuilder(leaves); IncrementallyUpdatedFilterPredicate streamingPredicate = builder.build(predicate); RecordMaterializer<T> filteringRecordMaterializer = new FilteringRecordMaterializer<T>( recordMaterializer, leaves, builder.getValueInspectorsByColumn(), streamingPredicate); return new RecordReaderImplementation<T>( MessageColumnIO.this, filteringRecordMaterializer, validating, new ColumnReadStoreImpl(columns, filteringRecordMaterializer.getRootConverter(), getType(), createdBy)); }
@Override public RecordReader<T> visit(FilterPredicateCompat filterPredicateCompat) { FilterPredicate predicate = filterPredicateCompat.getFilterPredicate(); IncrementallyUpdatedFilterPredicateBuilder builder = new IncrementallyUpdatedFilterPredicateBuilder(leaves); IncrementallyUpdatedFilterPredicate streamingPredicate = builder.build(predicate); RecordMaterializer<T> filteringRecordMaterializer = new FilteringRecordMaterializer<T>( recordMaterializer, leaves, builder.getValueInspectorsByColumn(), streamingPredicate); return new RecordReaderImplementation<T>( MessageColumnIO.this, filteringRecordMaterializer, validating, new ColumnReadStoreImpl(columns, filteringRecordMaterializer.getRootConverter(), getType(), createdBy)); }