DatabaseBackend<String, String, Long> b = new HeapBackend<String, String>(new ReadWritableFileAdapter(f), false, StringSerializer.INSTANCE, StringSerializer.INSTANCE, 0, 8192, lah);
// Maximum pointer needed: approx 1,000,000 * node size
// approx: 1,000,000 * 20 = 20,000,000 < 4294967296 =
// 2 ^ (4 * 8). i.e pointer size = 4 bytes
NodeRepository<BigInteger> nr = new FileBackedNodeRepository<BigInteger, Long>(new ReadWritableFileAdapter(treef), false, 0, new FixedSizeNodeSizeStrategy(m_bTreeNodeSize), true, new FixedSizeBigIntegerNullSerializer(STRING_HASH_SIZE + 1), LongNullSerializer.INSTANCE, 4, 8192, null, lah);
if (m_bTreeLruNodeCacheSize > 0)
{
nr = new LruCacheNodeRepository<BigInteger, Long>(nr, m_bTreeLruNodeCacheSize);
}
BPlusTree<BigInteger, Long> btree = new BPlusTree<BigInteger, Long>(nr, lah);