OperationSerializer<K, V> serializer = new OperationSerializer<K, V>(keySerizlizer, valueSerializer, keyCollectionSerializer); BlockCompressedRecordFile<Operation> recordFile = new BlockCompressedRecordFile.Builder(file, serializer, codec).build(); RecordFile.Reader<Operation> reader = recordFile.reader();
public BlockCompressedStableGeneration( BloomFilter.MemoryManager memoryManager, File file, Comparator<K> comparator, Serializer<K> keySerializer, Serializer<V> valueSerializer, final CompressionCodec codec, final boolean mlockBTree ) throws IOException { this.file = file; reader = new ImmutableBTreeIndex.Reader(file, comparator, keySerializer, new LongSerializer(), mlockBTree); final File valuesFile = new File(file, "values.bin"); recordFile = new BlockCompressedRecordFile.Builder(valuesFile, valueSerializer, codec).setMlockFiles(mlockBTree).build(); final File bloomFilterFile = new File(file, "bloomfilter.bin"); if (bloomFilterFile.exists()) { bloomFilter = new BloomFilter.Reader(memoryManager, bloomFilterFile, keySerializer); } else { bloomFilter = null; } sizeInBytes = reader.sizeInBytes()+valuesFile.length()+(bloomFilter == null ? 0 : bloomFilter.sizeInBytes()); stuffToClose = SharedReference.create((Closeable)new Closeable() { public void close() throws IOException { Closeables2.closeQuietly(reader, log); if (bloomFilter != null) Closeables2.closeQuietly(bloomFilter, log); Closeables2.closeQuietly(recordFile, log); } }); }
public boolean verifySegmentIntegrity(File file, int segmentNum) { BlockCompressedRecordFile<E> recordFile = null; try { recordFile = new BlockCompressedRecordFile.Builder(getSegmentPath(file, segmentNum, false), serializer, codec) .setBlockSize(blockSize) .setRecordIndexBits(recordIndexBits) .setPadBits(padBits) .build(); } catch (IOException e) { return false; } finally { if (recordFile != null) try { recordFile.close(); } catch (IOException e) { //ignore } } return true; }
public boolean verifySegmentIntegrity(File file, int segmentNum) { BlockCompressedRecordFile<E> recordFile = null; try { recordFile = new BlockCompressedRecordFile.Builder(getSegmentPath(file, segmentNum, false), serializer, codec) .setBlockSize(blockSize) .setRecordIndexBits(recordIndexBits) .setPadBits(padBits) .build(); } catch (IOException e) { return false; } finally { if (recordFile != null) try { recordFile.close(); } catch (IOException e) { //ignore } } return true; }