print(false);
// Set property on existing node ...
MutableCachedNode nodeB = check(session1).mutableNode("/childB");
NodeKey key = nodeB.getKey();
Stopwatch create = new Stopwatch();
Stopwatch total = new Stopwatch();
Stopwatch save = new Stopwatch();
Stopwatch opt = new Stopwatch();
optimizer.optimizeChildrenBlocks(key, null, 1000, 500); // will merge two into a single block ...
print(true);
print("Creating nodes ...");
total.start();
for (int i = 0; i != 100000; ++i) {
create.start();
NodeKey newKey = key.withId("child" + i);
// NodeKey newKey = session1.createNodeKey();
nodeB.createChild(session1, newKey, name("newChild"), property("p1a", 344), property("p2", false));
create.stop();
if (i != 0 && i % 1000 == 0) {
print(false);
print("Saving...");
// print(false);
save.start();
session1.save();
save.stop();
print(false);
print("Optimizing...");
print(false);
opt.start();
optimizer.optimizeChildrenBlocks(key, null, 1000, 500); // will split into blocks ...
opt.stop();
// Find node B again after the save ...
nodeB = check(session1).mutableNode("/childB");
}
}
total.stop();
print(true);
print("Time (create): " + create.getSimpleStatistics());
print("Time (save): " + save.getSimpleStatistics());
print("Time (optimize): " + opt.getTotalDuration());
print("Time (total): " + total.getTotalDuration());
session1.clear();
total.reset();