Remove(transaction, index_key, rid); } 测试官方给出的一个测试样例:TEST(CatalogTest, IndexInteraction3) { auto disk_manager = std::make_unique<DiskManager>("catalog_test.db"); auto bpm = std::make_unique<BufferPoolManagerInstance>(32, disk_manager.get()); auto catalog = std::...
遵守课程的条例,不公开源码,但我把自己写的相关测试样例放在下面,写的比较粗糙,因为是debug太痛苦时写的。 TEST(ExtendibleHashTableTest,InsertMultipleSplitTest){autotable=std::make_unique<ExtendibleHashTable<int,std::string>>(2);table->Insert(15,"a");table->Insert(14,"b");table->Insert(23,"c")...
线上没有对可扩展哈希表的Page类进行测试 Task #3-Extenable Hashing Implementation 课本中的实现步骤:Extendible Hash Table 最好也是参考着测试样例来实现 Each extendible hash table header/directory/bucket page corresponds to the content (i.e., the data_ part) of a memory page fetched by the buffer...
Project1没有做针对排行榜的优化。Project1基础部分不算难,但Bustub中只提供了简单的测试样例,通过了本地的测试后提交到gradescope可能拿不了满分,需要根据gradescope的提示信息再进行更正。 建议在函数中多打印一些调试信息,这些调试信息在gradescope的报告中是能看到的。 例如在函数入口处打印函数调用信息和参数信息,在...
4、测试样例 $ mkdir build $cdbuild $ make starter_test $ ./test/starter_test 注意:一定要更改test文件:vim ../test/primer/starter_test.cpp 一开始没注意到这句话,被这玩意坑死,淦! 测试结果: 本地测试 5、提交至gradescope打分 地址:https://www.gradescope.com/ ...
在开始接下来的任务前,首先应该完成TxnMgrDbg()这个辅助函数,这将很好的帮助理解每个txn是如何对un_log和undo_link操作的。注释里的样例就是测试用例的标准输出,可以通过执行测试用例来确定自己写的辅助函数是否正确。 在开始update或者delete前,我们需要先检测之前该事务是否已经修改过此元组,如果已经修改过就直接更新...
我尝试这样写了,但是因为析构的时候,测试样例会在析构 bpm 之前析构 disk_manager,所以总体的 QPS 不知道是多少。(如果不刷盘也可以通过线上测试,QPS 虽然很高,但是这样就是错的。) 2023-09-09· 日本 回复1 Aneureka 作者 杨戬 这个理解是没错的 实际上有点trick了 02-25· 上海 回复喜...
这一part 真的难,搞了好久,差点就准备放弃了,最后直接拿测试样例一遍一遍跑,不断的分析锁的粒度,怎样才能在巨大的并发量面前做到正确的插入与删除,坎坷但有收获! 目标:实现多个线程同时读写 B+ 树 任务文档的描述: In this part, you need to update your original single-threaded B+Tree index so that it...