@Override public int openFile(FileReference fileRef) throws HyracksDataException { openFileCount.incrementAndGet(); return bufferCache.openFile(fileRef); }
@Override public void openFile(int fileId) throws HyracksDataException { bufferCache.openFile(fileId); openFileCount.addAndGet(1); }
@Override public synchronized void activate() throws HyracksDataException { if (isOpen) { throw new HyracksDataException("Failed to activate the index since it is already activated."); } btree.activate(); if (fileId >= 0) { bufferCache.openFile(fileId); } else { fileId = bufferCache.openFile(invListsFile); } isOpen = true; wasOpen = true; }
@Override public synchronized void activate() throws HyracksDataException { if (isActive) { throw HyracksDataException.create(ErrorCode.CANNOT_ACTIVATE_ACTIVE_INDEX); } if (fileId >= 0) { bufferCache.openFile(fileId); } else { fileId = bufferCache.openFile(file); } freePageManager.open(fileId); setRootPage(); // TODO: Should probably have some way to check that the tree is physically consistent // or that the file we just opened actually is a tree isActive = true; }
@Override public synchronized void clear() throws HyracksDataException { if (!isOpen) { throw new HyracksDataException("Failed to clear since index is not open."); } btree.clear(); bufferCache.closeFile(fileId); bufferCache.deleteFile(fileId); fileId = bufferCache.createFile(invListsFile); bufferCache.openFile(fileId); }
public void warmup(ITreeIndexFrame frame, ITreeIndexMetadataFrame metaFrame, int[] warmupTreeLevels, int[] warmupRepeats) throws HyracksDataException { int fileId = bufferCache.openFile(fileRef);
@Override public synchronized void create() throws HyracksDataException { if (isActive) { throw HyracksDataException.create(ErrorCode.CANNOT_CREATE_ACTIVE_INDEX); } fileId = bufferCache.createFile(file); boolean failed = true; try { bufferCache.openFile(fileId); failed = false; } finally { if (failed) { bufferCache.deleteFile(fileId); } } failed = true; try { freePageManager.open(fileId); freePageManager.init(interiorFrameFactory, leafFrameFactory); setRootPage(); freePageManager.close(HaltOnFailureCallback.INSTANCE); failed = false; } finally { bufferCache.closeFile(fileId); if (failed) { bufferCache.deleteFile(fileId); } } }
public TreeIndexStats gatherStats(ITreeIndexFrame leafFrame, ITreeIndexFrame interiorFrame, ITreeIndexMetadataFrame metaFrame) throws HyracksDataException { int fileId = bufferCache.openFile(fileRef); treeIndexStats.begin(); int maxPageId = freePageManager.getMaxPageId(metaFrame);