!tip
代码都在top/xianghua/mydb/server/im/BPlusTreeTest.java中
运行如下单元测试,得到测试结果
java
public class BPlusTreeTest {
@Test
public void testTreeSingle() throws Exception {
TransactionManager tm = new MockTransactionManager();
DataManager dm = DataManager.create("E:\\temp\\TestTreeSingle", PageCache.PAGE_SIZE*10, tm);
long root = BPlusTree.create(dm);
BPlusTree tree = BPlusTree.load(root, dm);
int lim = 10000;
for(int i = lim-1; i >= 0; i --) {
tree.insert(i, i);
}
tree.insert(10000, 10000);
for(int i = 0; i < lim; i ++) {
List<Long> uids = tree.search(i);
assert uids.size() == 1;
assert uids.get(0) == i;
}
assert new File("/tmp/TestTreeSingle.db").delete();
assert new File("/tmp/TestTreeSingle.log").delete();
}
}