use of org.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveManager in project jackrabbit-oak by apache.
the class AzureArchiveManagerTest method testRecovery.
@Test
public void testRecovery() throws StorageException, URISyntaxException, IOException {
SegmentArchiveManager manager = new AzurePersistence(container.getDirectoryReference("oak")).createArchiveManager(false, new IOMonitorAdapter(), new FileStoreMonitorAdapter());
SegmentArchiveWriter writer = manager.create("data00000a.tar");
List<UUID> uuids = new ArrayList<>();
for (int i = 0; i < 10; i++) {
UUID u = UUID.randomUUID();
writer.writeSegment(u.getMostSignificantBits(), u.getLeastSignificantBits(), new byte[10], 0, 10, 0, 0, false);
uuids.add(u);
}
writer.flush();
writer.close();
container.getBlockBlobReference("oak/data00000a.tar/0005." + uuids.get(5).toString()).delete();
LinkedHashMap<UUID, byte[]> recovered = new LinkedHashMap<>();
manager.recoverEntries("data00000a.tar", recovered);
assertEquals(uuids.subList(0, 5), newArrayList(recovered.keySet()));
}
Aggregations