public TestFlushOperation(ILSMIndexAccessor accessor, FileReference target, ILSMIOOperationCallback callback, String indexIdentifier, LSMComponentFileReferences files, LSMComponentId componentId) throws HyracksDataException { super(accessor, target, callback, indexIdentifier); this.files = files; flushingComponent = accessor.getOpContext().getIndex().getCurrentMemoryComponent(); Mockito.when(flushingComponent.getId()).thenReturn(componentId); }
long maxId = logRecord.getFlushingComponentMaxId(); ILSMComponentId id = new LSMComponentId(minId, maxId); flushMap.put(LSMIOOperationCallback.KEY_NEXT_COMPONENT_ID, index.getCurrentMemoryComponent().getId()); if (!index.getDiskComponents().isEmpty()) { ILSMDiskComponent diskComponent = index.getDiskComponents().get(0);
private void checkComponentIds(int partitionIndex) throws HyracksDataException { // check memory component if (primaryIndexes[partitionIndex].isMemoryComponentsAllocated()) { ILSMMemoryComponent primaryMemComponent = primaryIndexes[partitionIndex].getCurrentMemoryComponent(); ILSMMemoryComponent secondaryMemComponent = secondaryIndexes[partitionIndex].getCurrentMemoryComponent(); Assert.assertEquals(primaryMemComponent.getId(), secondaryMemComponent.getId()); Assert.assertEquals(primaryIndexes[partitionIndex].getCurrentMemoryComponentIndex(), secondaryIndexes[partitionIndex].getCurrentMemoryComponentIndex()); } List<ILSMDiskComponent> primaryDiskComponents = primaryIndexes[partitionIndex].getDiskComponents(); List<ILSMDiskComponent> secondaryDiskComponents = secondaryIndexes[partitionIndex].getDiskComponents(); Assert.assertEquals(primaryDiskComponents.size(), secondaryDiskComponents.size()); for (int i = 0; i < primaryDiskComponents.size(); i++) { Assert.assertEquals(primaryDiskComponents.get(i).getId(), secondaryDiskComponents.get(i).getId()); } }
primaryId = (LSMComponentId) memComponent.getId();
Assert.assertEquals(primaryLsmBtrees[0].getCurrentMemoryComponent().getId(), secondaryLsmBtrees[0].getCurrentMemoryComponent().getId()); Assert.assertEquals(primaryLsmBtrees[1].getCurrentMemoryComponent().getId(), secondaryLsmBtrees[1].getCurrentMemoryComponent().getId()); } catch (Throwable e) { e.printStackTrace();