use of org.apache.jackrabbit.oak.fixture.OakRepositoryFixture in project jackrabbit-oak by apache.
the class PersistentCacheTest method createRepository.
@Override
protected Repository[] createRepository(RepositoryFixture fixture) throws Exception {
System.setProperty("PersistentCacheStats.rejectedPut", "true");
if (fixture instanceof OakRepositoryFixture) {
OakFixture oakFixture = ((OakRepositoryFixture) fixture).getOakFixture();
if (oakFixture instanceof OakFixture.MongoFixture) {
OakFixture.MongoFixture mongoFixture = (OakFixture.MongoFixture) oakFixture;
DocumentMK.Builder builder = mongoFixture.getBuilder(1);
builder.setStatisticsProvider(statsProvider);
builder.setPersistentCache("target/persistentCache,time," + CACHE_OPTIONS);
dns = builder.getNodeStore();
nodesCache = DocumentNodeStoreHelper.getNodesCache(dns);
Oak[] cluster = mongoFixture.setUpCluster(new DocumentMK.Builder[] { builder }, statsProvider);
return new Repository[] { new Jcr(cluster[0]).createRepository() };
}
}
throw new IllegalArgumentException("Fixture " + fixture + " not supported for this benchmark.");
}
use of org.apache.jackrabbit.oak.fixture.OakRepositoryFixture in project jackrabbit-oak by apache.
the class ObservationTest method run.
@Override
public void run(Iterable<RepositoryFixture> fixtures) {
for (RepositoryFixture fixture : fixtures) {
if (fixture.isAvailable(1)) {
System.out.format("%s: Observation throughput benchmark%n", fixture);
try {
final AtomicReference<Whiteboard> whiteboardRef = new AtomicReference<Whiteboard>();
Repository[] cluster;
if (fixture instanceof OakRepositoryFixture) {
cluster = ((OakRepositoryFixture) fixture).setUpCluster(1, new JcrCreator() {
@Override
public Jcr customize(Oak oak) {
whiteboardRef.set(oak.getWhiteboard());
return new Jcr(oak);
}
});
} else {
cluster = fixture.setUpCluster(1);
}
try {
run(cluster[0], whiteboardRef.get());
} finally {
fixture.tearDownCluster();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
use of org.apache.jackrabbit.oak.fixture.OakRepositoryFixture in project jackrabbit-oak by apache.
the class RevisionGCTest method run.
@Override
public void run(Iterable<RepositoryFixture> fixtures) {
for (RepositoryFixture fixture : fixtures) {
if (fixture.isAvailable(1)) {
System.out.format("%s: RevisionGC benchmark%n", fixture);
try {
final AtomicReference<Oak> whiteboardRef = new AtomicReference<Oak>();
Repository[] cluster;
if (fixture instanceof OakRepositoryFixture) {
cluster = ((OakRepositoryFixture) fixture).setUpCluster(1, new JcrCreator() {
@Override
public Jcr customize(Oak oak) {
whiteboardRef.set(oak);
return new Jcr(oak);
}
});
} else {
System.err.format("%s: RevisionGC benchmark only runs on Oak%n", fixture);
return;
}
try {
run(cluster[0], getNodeStore(whiteboardRef.get()));
} finally {
fixture.tearDownCluster();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
Aggregations