use of org.neo4j.kernel.EmbeddedGraphDatabase in project graphdb by neo4j-attic.
the class TestProveFiveBillion method proveIt.
@Test
public void proveIt() throws Exception {
deleteFileOrDirectory(new File(PATH));
BatchInserter inserter = new BatchInserterImpl(PATH);
// Create one giant chain of nodes n1->n2->n3 where each node will have
// an int property and each rel a long string property. This will yield
// 5b nodes/relationships, 10b property records and 5b dynamic records.
// Start off by creating the first 4 billion (or so) entities with the
// batch inserter just to speed things up a little
long first = inserter.getReferenceNode();
int max = (int) pow(2, 32) - 1000;
Map<String, Object> nodeProperties = map("number", 123);
Map<String, Object> relationshipProperties = map("string", "A long string, which is longer than shortstring boundaries");
long i = 0;
for (; i < max; i++) {
long second = inserter.createNode(nodeProperties);
inserter.createRelationship(first, second, TYPE, relationshipProperties);
if (i > 0 && i % 1000000 == 0)
System.out.println((i / 1000000) + "M");
first = second;
}
inserter.shutdown();
System.out.println("Switch to embedded");
// Then create the rest with embedded graph db.
GraphDatabaseService db = new EmbeddedGraphDatabase(PATH);
Node firstNode = db.getNodeById(first);
Transaction tx = db.beginTx();
for (; i < 5000000000L; i++) {
Node secondNode = db.createNode();
firstNode.createRelationshipTo(secondNode, TYPE);
firstNode = secondNode;
if (i % 100000 == 0) {
tx.success();
tx.finish();
System.out.println((i / 1000000) + "M");
tx = db.beginTx();
}
}
// Here we have a huge db. Loop through it and count chain length.
/* long count = 0;
Node node = db.getReferenceNode();
while ( true )
{
Relationship relationship = node.getSingleRelationship( TYPE, Direction.OUTGOING );
if ( relationship == null )
{
break;
}
}
System.out.println( count );
assertTrue( count > 4900000000L );*/
db.shutdown();
}
use of org.neo4j.kernel.EmbeddedGraphDatabase in project graphdb by neo4j-attic.
the class TestBigStore method doBefore.
@Before
public void doBefore() {
// Delete before just to be sure
deleteFileOrDirectory(new File(PATH));
db = new EmbeddedGraphDatabase(PATH);
}
use of org.neo4j.kernel.EmbeddedGraphDatabase in project graphdb by neo4j-attic.
the class TestCacheTypes method testWeakRefCache.
@Test
public void testWeakRefCache() {
GraphDatabaseService db = newDb("weak");
assertEquals(CacheType.weak, ((EmbeddedGraphDatabase) db).getConfig().getGraphDbModule().getNodeManager().getCacheType());
db.shutdown();
}
use of org.neo4j.kernel.EmbeddedGraphDatabase in project graphdb by neo4j-attic.
the class TestCacheTypes method testNoCache.
@Test
public void testNoCache() {
GraphDatabaseService db = newDb("none");
assertEquals(CacheType.none, ((EmbeddedGraphDatabase) db).getConfig().getGraphDbModule().getNodeManager().getCacheType());
db.shutdown();
}
use of org.neo4j.kernel.EmbeddedGraphDatabase in project graphdb by neo4j-attic.
the class TestCacheTypes method testSoftRefCache.
@Test
public void testSoftRefCache() {
GraphDatabaseService db = newDb("soft");
assertEquals(CacheType.soft, ((EmbeddedGraphDatabase) db).getConfig().getGraphDbModule().getNodeManager().getCacheType());
db.shutdown();
}
Aggregations