Atendb icon indicating copy to clipboard operation
Atendb copied to clipboard

The tiny bitcask storage engine

Results 1 Atendb issues
Sort by recently updated
recently updated
newest added

您好,您的这个项目非常值得我学习,多线程安全和C++关键语法都有涉及,并且用模板元编程实现了跳表,提高了复用性。只是我初学C++不久,对于代码,有几处不太理解,希望能得到您的帮助,万分感谢 以下是我的两点疑问 - 您的代码中,使用了多张哈希表、多个索引文件、多个活跃的数据文件。但是只有在recover的时候用到了多线程,请问这样做的目的是什么呢?另外bitcask模型似乎是只能有一个活跃的数据文件,使用多个的话,会有影响吗? - 在代码中,有一处我并未看明白 ```cpp bool PosixFile::Read(uint64_t offset, uint32_t n, char* buf) { if (offset > file_offset_) {//请问这是什么意思呢?按照我的理解,要正常插入数据和索引文件的话,应该需要offset和file_offset一致对吗?因为bitcask是顺序读写,数据应该插入到文件末尾。为什么两者不相等之后,都还能插入呢? uint32_t pos = offset - file_offset_; if (pos > map_size_)...