@Test
public void test_raw_data() throws Exception {
final String cacheName = "objects";
SimpleCohCloud cloud = new SimpleCohCloud();
cloud.all().outOfProcess(true);
cloud.node("client").localStorage(false);
cloud.node("storage").localStorage(true);
JvmProps.at(cloud.node("storage")).addJvmArg(storageVmOptions);
cloud.all().setProp("tangosol.pof.enabled", "true");
cloud.all().setProp("tangosol.pof.config", "capacity-benchmark-pof-config.xml");
cloud.all().setProp("tangosol.coherence.cacheconfig", "capacity-benchmark-cache-config.xml");
cloud.all().setProp("benchmark-default-scheme", scheme);
cloud.all().getCache(cacheName);
int storagePid = cloud.node("storage").exec(new Callable<Integer>() {
@Override
public Integer call() throws Exception {
String name = ManagementFactory.getRuntimeMXBean().getName();
name = name.substring(0, name.indexOf("@"));
return Integer.parseInt(name);
}
});
HeapHisto initial = histo(storagePid, true);
System.out.println("Initial heap size: " + (initial.totalBytes() >> 20) + "MiB");
Loader loader = new Loader();
loader.cacheName = cacheName;
loader.rangeStart = 1000000;
loader.rangeFinish = 1000000 + objectCount;
System.out.println("Cold loading");
cloud.node("client").exec(loader);
HeapHisto loaded1 = histo(storagePid, true);
System.out.println("Storage heap usage delta: " + ((loaded1.totalBytes() - initial.totalBytes()) >> 20) + "MiB");
cloud.node("client").getCache(cacheName).clear();
cloud.node("client").getCache(cacheName).size();
HeapHisto empty = histo(storagePid, true);
System.out.println("Empty heap size: " + (empty.totalBytes() >> 20) + "MiB");
System.out.println("Warm loading");
cloud.node("client").exec(loader);
HeapHisto loaded2 = histo(storagePid, true);
System.out.println("Storage heap usage delta: " + ((loaded2.totalBytes() - empty.totalBytes()) >> 20) + "MiB");
System.out.println("Storage heap full vs initial summary:");